【问题标题】:How to override a site's jQuery function?如何覆盖网站的 jQuery 函数?
【发布时间】:2011-04-15 17:07:21
【问题描述】:

特别是 pitchfork.com 主页上的 delayedAutoNext 函数,它可以旋转 pitchfork.tv 图像——我想将 setTimeout 值更改为不同的数字。

如何使用书签和/或用户脚本做到这一点?

【问题讨论】:

    标签: javascript jquery bookmarklet userscripts


    【解决方案1】:

    您可能不得不用自己的代码将该页面封装起来,但老实说,这就是在入侵网站。

    【讨论】:

    • 公平地说,我假设您喜欢每个网站的功能,并且不使用浏览器的任何插件或扩展程序来操作网页。
    • 这些是不同的问题。为了得到你想要的,你需要改变网站的工作方式,而不仅仅是它的外观或类似的方式。
    【解决方案2】:

    因为它在匿名闭包的范围内,您无法直接访问它,您需要做的是删除 links/prev/next 上的点击事件处理程序并为它们编写新的处理程序。

    所以基本上你会在$(document).ready()中重写整个匿名函数添加

    links.unbind('click');
    next.unbind('click');
    prev.unbind('click');
    

    变量声明后,再调整'delayedAutoNext()'函数的setTimeout毫秒数。

    【讨论】:

    • 无法正常工作,我还需要使用 unsafeWindow 吗?
    猜你喜欢
    • 2011-05-31
    • 1970-01-01
    • 2011-02-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-05
    相关资源
    最近更新 更多