当前位置: 首页 > news >正文

改写自己的浏览器插件工具 myChromeTools - 详解

1. 起因, 目的:

前面我写过, 自己的一个浏览器插件小工具

2. 先看效果

请添加图片描述

3. 过程:

代码 1, 模拟鼠标自然滚动
// 处理滚动控制逻辑,响应 popup.js 发送的 startScroll 和 stopScroll 消息。
(
function (
) {
let scrollInterval =
null
;
function smoothAutoScroll(
) {
if (scrollInterval) {
clearInterval(scrollInterval)
;
}
scrollInterval = setInterval((
) =>
{
const scrollHeight = document.documentElement.scrollHeight;
const windowHeight = window.innerHeight;
const currentScroll = window.scrollY;
if (currentScroll + windowHeight >= scrollHeight - 1
) {
window.scrollTo({
top: 0
, behavior: 'smooth'
}
)
;
}
else {
window.scrollBy({
top: 2
, behavior: 'smooth'
}
)
;
}
}
, 16
)
;
// 每16毫秒滚动一次,约60fps
}
function stopScroll(
) {
if (scrollInterval) {
clearInterval(scrollInterval)
;
scrollInterval =
null
;
}
}
chrome.runtime.onMessage.addListener((message, sender, sendResponse
) =>
{
if (message.action === 'startScroll'
) {
smoothAutoScroll(
)
;
}
else
if (message.action === 'stopScroll'
) {
stopScroll(
)
;
}
}
)
;
}
)(
)
;

4. 结论 + todo


希望对大家有帮助。

http://www.rkmt.cn/news/16774.html

相关文章:

  • 通过litestream 进行sqlite-vec 数据备份以及恢复
  • 对于路由使用的ref的疑问
  • 钱璐璐,唯一通讯发Nature,作者仅2人!
  • # Redis vs ElasticSearch 搜索性能对比
  • Redis部署策略
  • 【Claude 3.5 Sonnet 生成】AI时代软件行业发展趋势与开发者成长路径分析报告
  • caddy搭建静态+PHP+伪静态Web服务器
  • 静态库.a与.so库文件的生成与使用
  • 通过利用百度对于外链的检测算法上的缺陷
  • 深入解析:预览pdf(url格式和blob格式)
  • 线性偏微分方程和非线性偏微分方程的区别
  • selenium基础 - 教程
  • 详细介绍:20250602在荣品的PRO-RK3566开发板的Android13下的uboot启动阶段配置BOOTDELAY为10s
  • 实用指南:HTML实现端午节主题网站:龙舟争渡,凭吊祭江诵君赋
  • 大数据-276 Spark MLib - 基础介绍 机器学习算法 Bagging和Boosting区别 GBDT梯度提升树 - 实践
  • 向量存储vs知识图谱:LLM记忆系统技术选型
  • card
  • 复习题集
  • Kubernetes 定时备份etcd数据
  • 17_AiAgentMCP实现技术选型
  • Photoshop启用钢笔绘制图形
  • 代码随想录打卡|Day51 图论(dijkstra(堆优化版)精讲、Bellman_ford 算法精讲) - 教程
  • 自动化数据操作平台获3000万美元融资
  • 常见排序算法详解与C语言实现 - 详解
  • AtCoder Beginner Contest 422 游记(VP)
  • 详细介绍:无人机光纤FC接口模块技术分析
  • 文件提供的基本操作
  • yarn、pnpm、npm - 指南
  • 基于Linux环境docker封装exe
  • ubuntu之开机自启frpc - 教程