CSS属性更改侦听器
CSS Property Change Listener
有任何CSS属性更改监听器的建议实现吗?也许:
thread =
function getValues(){
while(true){
for each CSS property{
if(properties[property] != nil && getValue(property) != properties[property]){alert('change')}
else{properties[property] = getValue(property)}
}
}
}
不赞成使用DOMAttrModified
等突变事件。请考虑改用MutationObserver。
示例:
<div>use devtools to change the <code>background-color</code> property of this node to <code>red</code></div>
<p>status...</p>
JS:
var observer = new MutationObserver((mutations) => {
mutations.forEach((mutation) => {
if (mutation.target.style.color === 'red') {
document.querySelector('p').textContent = 'success';
}
});
});
var observerConfig = {
attributes: true,
childList: false,
characterData: false,
attributeOldValue: true
};
var targetNode = document.querySelector('div');
observer.observe(targetNode, observerConfig);
我想你正在寻找这个:
document.documentElement.addEventListener('DOMAttrModified', function(e){
if (e.attrName === 'style') {
console.log('prevValue: ' + e.prevValue, 'newValue: ' + e.newValue);
}
}, false);
如果你在谷歌上搜索,就会出现一堆东西。这看起来很有希望:
http://darcyclarke.me/development/detect-attribute-changes-with-jquery/
相关文章:
- Highslide(iframe的侦听器)
- CSS属性更改侦听器
- Google事件侦听器:未捕获类型错误:无法读取属性'addEventListener'为null
- 聚合物中的“观察者”与“通知”(在属性块中)与“观察者”与“侦听器”之间的区别
- 无法读取事件侦听器中 null 的属性“源事件”
- 侦听器单击任何元素并读取特定的 HTML-5 自定义属性(如果存在)
- 使用NameNodeMap从事件侦听器目标获取属性
- JavaScript:调用属性'内的私有函数;的事件侦听器
- 主干模型数组属性更改和更改事件侦听器不总是启动
- 事件侦听器属性运行不正常
- 作为属性的角度事件侦听器
- 使用对象的属性添加事件侦听器
- 在音频元素上以编程方式设置currentTime属性会导致事件侦听器无限期地触发
- 在没有处理程序引用的情况下覆盖侦听器,是否可以访问Ext.data.store上的(可能是私有的)事件属性
- 访问侦听器方法中的对象属性
- 如何在不丢失事件侦听器和展开属性的情况下清除文件输入
- RDFa属性的事件侦听器
- onclick 属性与事件侦听器
- html 按钮上的侦听器已禁用属性
- Twitter bootstrap - 如何在全局侦听器上设置 JavaScript 属性,而不重复代码