文章
观点

油猴脚本编写如何入门?

菜单
  1. mimi0123  

    最近想写个js脚本,清除页面广告的,鼓捣了一早上也没搞好。

    先是用jquery的选择器来识别DOM元素,然后逐个删除,效率很不错,但是有个别元素无论如何都无法删除,不知道是没识别到还是其他什么原因。另外对所有代码均对网站主页无效。

    之后改用JS写,感觉更加痛苦更加繁琐不说,一个广告都没删掉。

    我没理解问题是出在哪里了?是本身浏览器自带的DOM识别就出问题,还是前端设置出问题,按照道理来说这种事应该非常简单,毕竟只涉及前端修改。把DOM元素标记好,直接写程序就完了。

    但花了很长时间都没完成,不知道问题出在哪里。

  2. rebecca   我不是品葱的神,但是后来发生了一些事情

    你先要确定你是否选择到了正确的元素(比如把选择的结果 console.log出来

    然后再决定对这个元素做什么事情

    这个不要在油猴里做,先在浏览器console里做实验为好。

  3. mimi0123  

    @rebecca #2

    刚才已经找到部分广告无法清除的原因了,有些广告是异步加载,而油猴在异步事件触发前,就已经运行完了。等于说对触发事件之后的新页面无效。

  4. rebecca   我不是品葱的神,但是后来发生了一些事情

    @mimi0123 #3 是,所以加延时就可以解决。

  5. mimi0123  

    @rebecca #4 目前通过检查元素确定广告模块的标签属性和样式表名称,然后在控制台里编写程序,明明通过名称取到合法对象。

    但显示SyntaxError: Document.querySelector: '[object HTMLDocument]' is not a valid selector

    也就是对象类型有问题,无法用删除函数。

  6. 小二   默认开启批量屏蔽受限用户发言功能,可在设置中手动取消。

    @mimi0123 #1 都有现成的呀,为啥要自己写。uo 就可以自己选择要清除的页面元素。

  7. mimi0123  

    @小二 #6

    已经换了,主要想通过删广告练习下油猴编程,现在计划通过编写油猴脚本翻译一个外国网站界面。