我想检测网页的某个特定部分何时发生更改,并在发生时刷新页面。这可能吗?例如,假设在页面的左上角有一个绿色的,绝对定位的元素,大约50px乘50px - 我希望页面在它变成红色时刷新。
基本上我正在尝试构建的是一个网站的叠加层,它将检测何时弹出通知并自动刷新页面。如果有其他方法比我想出的方法更好,请对任何事情持开放态度。
答案 0 :(得分:0)
您可以使用:
$(element).on('DOMAttrModified', function() {
//code
});
不确定这是否属于标准。
答案 1 :(得分:0)
您可以使用它来检查每一秒:
function hasChanged(hasItChanged)
{
//your code, eg
if(hasItChanged) alert("yep");
else alert("nope");
}
function check(){
if($("element").css("background-color") == "rgb(255, 0, 0)")
hasChanged(true);
else
hasChanged(false);
}
setInterval(check, 1000); //check every second (1000 miliseconds)
只需将if($("element").css("background-color") == "rgb(255, 0, 0)")
行更改为您发现更改的某些CSS(显然会将$("element")
更改为您想要的选择器。)
编辑:我发现你必须使用RGB才能工作,就颜色而言。但是您始终可以在浏览器的控制台中键入$("element").css("background-color")
并查看它为您提供的内容。也许你需要一个或者声明来支持跨浏览器,尽管我认为至少在现代浏览器中这是不必要的。