我想知道是否有任何功能可用于跟踪元素的更改?我想跟踪height
一个元素,如果达到max-height
,那么addClass
一些东西。
跟踪我的意思是连续的,否则我只会写一个 if 语句。
我想知道是否有任何功能可用于跟踪元素的更改?我想跟踪height
一个元素,如果达到max-height
,那么addClass
一些东西。
跟踪我的意思是连续的,否则我只会写一个 if 语句。
如果您控制对元素的更改将发生的方式(例如,因为您提供了进行这些更改的接口),您应该实现自己的回调系统,或者在发生更改时运行一个函数。
如果您不控制它们,则必须定期监视元素并检查更改,使用setInterval
或递归调用setTimeout
. 当您不再需要监视更改或元素变得不可用时,请记住清除间隔/中断超时循环。如果不这样做,则回调中引用的任何对象都不会被垃圾收集。
使用 a setInterval
,像这样:
var maxHeight = 0;
setInterval(function() {
if($("#myelement").height() >= maxHeight) {
// do stuff when div is too tall
}
}, 50);