我有以下代码来侦听插入的 DOM 节点
$('#box').on('DOMNodeInserted', function(e) {
var news = e.target.className.split(" ");
if (news[news.length-1].indexOf("today")){
//do something
}
});
当插入一个节点时,上面的代码应该检查该类以查看它是否具有字符串“today”。插入的html的结构是这样的……
<div class="posts news today">
如果它有“今天”,它应该“做某事”
问题是由于某种原因,上面的函数显示插入的节点有一个类
""
即使插入的元素是
<div class="posts news today">
但是,已经存在的元素显示了正确的类
posts news today
问题出在这段代码的某个地方,但我不确定为什么插入的节点会被解释为没有类,而现有节点有。
为了澄清,这段代码
$('#box').on('DOMNodeInserted', function(e) {
var news = e.target.className;
console.log(news);
});
为页面加载时已存在的元素输出正确的类名,但为插入的元素显示“”。如上所述,插入的元素包含正确的类信息,只是没有被上面的代码解释。