我正在编写一个只从特定网页中删除某些内容的书签 现在的问题是网页上有“无休止的滚动”#34;分页,您需要在每个页面加载后反复单击书签。
是否可以使用书签来捕获网页内容更新?
答案 0 :(得分:2)
根据http://en.wikipedia.org/wiki/DOM_events#Common.2FW3C_events DOM变异事件已被弃用,因此似乎没有跨浏览器方式来捕获页面内容更新上的事件。
phari向新的DOM突变事件API发布了link,似乎在所有现代浏览器中都支持。该页面的使用代码示例:
// select the target node
var target = document.querySelector('#some-id');
// create an observer instance
var observer = new MutationObserver(function(mutations) {
mutations.forEach(function(mutation) {
console.log(mutation.type);
});
});
// configuration of the observer:
var config = { attributes: true, childList: true, characterData: true };
// pass in the target node, as well as the observer options
observer.observe(target, config);
// later, you can stop observing
observer.disconnect();
如果您需要支持较旧的浏览器,您可能会尝试使用旧版浏览器的后备版jquery-observe。或者自己写一下,比如这里https://stackoverflow.com/a/14570614/4712360
另一种选择是检查网站的源代码,也许你可以在网页内容更新后找到一些事件。或者你可以挂钩一些在更新内容后调用的函数,或者,作为最后的手段,你可以简单地设置一个函数区间,它将检查页面上是否有任何变化。