Userscript:修订间差异

来自Gea-Suan Lin's Wiki
跳到导航 跳到搜索
此页面具有访问限制。如果您看见此消息,则说明您没有权限访问此页面。
→‎SPA
第13行: 第13行:
<syntaxhighlight lang="javascript">
<syntaxhighlight lang="javascript">
let ob = new window.MutationObserver(mutations => {
let ob = new window.MutationObserver(mutations => {
   mutations.forEach(mutation => {
  mutations.forEach(mutation => {
     mutation.addedNodes.forEach(node => {
   mutation.addedNodes.forEach(node => {
       // Uninstall
    if (...) {
       ob.disconnect();
     // Uninstall
     });
     ob.disconnect();
    }
    });
    });
  });
});
});


ob.observe(document, {
ob.observe(document, {
   childList: true,
  childList: true,
   subtree: true,
  subtree: true,
});
});
</syntaxhighlight>
</syntaxhighlight>

2023年2月19日 (日) 11:44的版本

Userscript是一个让开发者更容易操作(与修改)网页的方式,通常是以JavaScript撰写。

软件

目前推荐使用开源的Violentmonkey,支援Chromium系列浏览器,以及Firefox浏览器。

范例

SPA

对于SPA类常用的方式,听HTML元素的事件(这边是听document元素,可以自己考虑听更小的范围):

let ob = new window.MutationObserver(mutations => {
  mutations.forEach(mutation => {
    mutation.addedNodes.forEach(node => {
      if (...) {
        // Uninstall
        ob.disconnect();
      }
    });
  });
});

ob.observe(document, {
  childList: true,
  subtree: true,
});

自用

重新安装时用的,自己写的就不列出来了:

另外的一些:

外部链接

Hosting