0.3.2 • Published 12 months ago

monkeyscript v0.3.2

Weekly downloads
-
License
MIT
Repository
-
Last release
12 months ago

主要应用于浏览器插件油猴脚本的非常规函数或功能

注意:使用了?. startsWith includes等api 请注意打包的时候进行编译以便处理兼容性问题

Usage

  1. 异步获取元素
  • 由于延迟15ms获取,如果立即处理删除dom节点可能会出现闪烁的情况。如确实需要移除dom节点,建议添加css隐藏dom后再使用此功能
  • 由于获取到结果就立即返回,如果想获取所有元素可能会出现丢失的情况,建议指定元素
// 测试网站 bilibili https://www.bilibili.com/video/*
import { querySelectorAll } from 'monkeyscript'
function querySelector(){
    return querySelectorAll(...arguments).then( res => res[0]);
};
const base = performance.now();
querySelector('[class="bui-danmaku-switch-input"').then((res) => {
    console.log('总计用时', performance.now() - base)
    console.log("弹幕[class]", res);
});
querySelector('.bui-danmaku-switch-input').then((res) => {
    console.log("总计用时", performance.now() - base);
    console.log("弹幕.bui", res);
});
querySelector('.bpx-player-sending-area input.bui-checkbox-input').then((res) => {
    console.log("总计用时", performance.now() - base);
    console.log("弹幕.check", res);
});

// 测试网站 ****
// 获取同域iframe内元素栗子,不支持跨域
querySelector('#renewframe').then( res => {
    console.log("总计用时 iframe", performance.now() - base);
    return querySelector('.kclist1.fl dl:nth-of-type(3)', res)
}).then( res => {
    console.log("总计用时", performance.now() - base);
    console.log('我也不知道啥用途的 dl', res)
})

License

MIT

0.3.2 - 2023-06-10

调整优化允许import和require两种方式使用

0.3.1 - 2022-10-10

修复parseHeaderMeta获取最后一个块注释时的bug

0.3.0 - 2022-10-04

新增 parseHeaderMeta 提取文件头部注释

0.2.1 - 2022-10-03

添加 调整jsdoc提示

0.2.0 - 2022-10-02

修改为ES modules

优化 独立出来awaitDocument

优化 定时器内执行查询,理论上监听所有节点和attr,如果监听都获取不到,定时器也获取不到,这里只起个兜底安慰效果

0.1.0 - 2022-09-24

添加 异步获取元素