【发布时间】:2012-01-12 04:52:27
【问题描述】:
在 YouTube 上,当我点击 trending 时,它会进行 AJAX 调用以获取热门视频。
现在,我制作了一个脚本,可以删除我已经看过的所有视频。
该脚本适用于首页,但我希望在单击 trending 时也执行该脚本。
【问题讨论】:
标签: javascript ajax event-handling youtube greasemonkey
在 YouTube 上,当我点击 trending 时,它会进行 AJAX 调用以获取热门视频。
现在,我制作了一个脚本,可以删除我已经看过的所有视频。
该脚本适用于首页,但我希望在单击 trending 时也执行该脚本。
【问题讨论】:
标签: javascript ajax event-handling youtube greasemonkey
您可以像这样拦截 AJAX 调用:
但这会变得一团糟,而且您会遇到将您关心的 AJAX 调用与您不关心的调用分开的问题。
在实践中,只关注最终结果 HTML 并在它发生变化时对其进行处理会更简单。
我有一个方便的实用功能,在这些情况下效果很好。见this answer to "Fire Greasemonkey script on ajax request"。
【讨论】:
done 类。我要问一个新的 SO 问题,询问当 DOM 发生变化时我是否可以这样做......
waitForKeyElements(),它会这样做。它的默认模式是只要页面加载就进行检查。我现在要回答新问题。
将 jquery 侦听器附加到点击点怎么样?
jQuery("a[data-feed-name='trending']").click(function(){
alert('trending clicked')
});
仅供参考,在此脚本之前包含 jquery 库:)
【讨论】: