1
nine 2016-03-31 01:01:58 +08:00
if $('#talk').text() != ''
|
2
swuhvxee OP @nine 谢谢,这种是监听吗,会不会产生效率问题。我刚才写了个 if 判断,能用是能用,不过打开网页超过 30 秒,直接卡的浏览器崩溃了
|
3
abelyao 2016-03-31 02:03:59 +08:00
@swuhvxee
一楼那个当然不是监听,在 JavaScript 中更多的是靠 “回调” 来触发事件,达到像监听一样的效果。如果你写了一个 while 循环一直在做 if 判断,卡死是早晚的事。 比较传统一点的方法是在 div 有内容之后,主动调用你要执行的事件。 玩得个性点的,可以看看这篇文章: https://davidwalsh.name/detect-node-insertion ,利用 CSS 3 的动画来触发事件。 |
5
shinwood 2016-03-31 07:03:58 +08:00 via iPhone
用 MutationObsever 来监控 div 内容是否有变化。
|
6
jame 2016-03-31 10:18:12 +08:00
监听 DOM 更改事件
https://developer.mozilla.org/en-US/docs/XUL/Events#Mutation_DOM_events document.addEventListener('DOMNodeInserted',function(){alert(1)},false); document.addEventListener('DOMAttrModified',function(){alert(1)},false); document.addEventListener('DOMNodeRemoved',function(){alert(1)},false); |
8
shinwood 2016-03-31 14:00:11 +08:00 1
|