Jquery 如何不断检查新的<;李>;a<;部门>;?
我想不断检查新的li元素,以便无论何时出现这些新元素,我都会收到新的警报 JS:Jquery 如何不断检查新的<;李>;a<;部门>;?,jquery,list,html-lists,Jquery,List,Html Lists,我想不断检查新的li元素,以便无论何时出现这些新元素,我都会收到新的警报 JS: $(function () { if ($('#div').find('<li></li>')) { alert('you just got new <li> elements'); } // it is just an examplory function which // wil
$(function () {
if ($('#div').find('<li></li>')) {
alert('you just got new <li> elements');
}
// it is just an examplory function which
// will keep looking for only new <li> elements created by ol list
})();
$(函数(){
如果($('#div')。查找('')){
警惕(“您刚刚获得了新的元素”);
}
//这只是一个示例函数
//将只继续查找由ol list创建的新 元素
})();
Js小提琴在这里
请帮助。像这样的函数应该对您有所帮助
document.addEventListener("DOMNodeInserted", function(event){
var element = event.target;
if (element.tagName == 'li') {
alert("li added");
}
});
检查
HTML
但这种跨浏览器兼容吗?变异事件在ie中几乎没有支持吗?@MaVRoSCy我测试了它,但它不起作用。我添加了jfiddlecheck@MarsOne非常感谢。我只想检测由(而不是onclick事件)创建的li。在这个新的小提琴中。在每个新的li上,都有3次警报。请查看@MarsOne请在“链接文本”后单击要通过ol自动创建新的li,这里是什么在创建新的
li
s?在创建li
时发出警报,而不是让一个单独的函数监视它,这难道没有意义吗?对于IE8兼容版本@Moob,请尝试此方法。我想为ol列表中创建的新li设置li的自动增加id。如果我能得到新李的提醒,那么剩下的就很容易了。另外,请检查我的JSFIDLE,我在这里没有看到全部情况。您的提琴显示jquery正在添加的元素。我猜这同一块html将被添加多次,并且每一块都应该有自己的id。听起来每次注入新的html时设置id是最容易的。@user1452376,检查我的小提琴。它会在单击按钮时向DOM动态添加一个Li。它的工作原理与您的代码一样。您计划如何将li添加到dom中?在页面加载或任何类似按钮单击的事件上?
<div id="container" style="background-color:#e0d0a0; width:300px; height:100px;"></div>
<button onclick="AddLiToContainer ();">Add a li node to the container!</button>
function AddLiToContainer() {
var newLi = document.createElement("li");
var textNode = document.createTextNode("Hello World");
newLi.appendChild(textNode);
if (newLi.addEventListener) {
newLi.addEventListener('DOMNodeInserted', OnNodeInserted, false);
}
var container = document.getElementById("container");
container.appendChild(newLi);
}
function OnNodeInserted(event) {
var Li = event.target;
alert("The text node '" + Li.innerHTML + "' has been added to an element.");
}