我正在使用 DOMSubtreeModified 来获取 div 中的所有 DOM 更改。
var stoppedTyping="";
$(".jqte_editor").on("DOMSubtreeModified", function(e) {
if (stoppedTyping) clearTimeout(stoppedTyping);
stoppedTyping = setTimeout(function(){
var editorText = $(".jqte_editor").html();
createUniqueId($(".jqte_editor"));
console.log(editorText);
}, 1000);
});
在上面的代码中,在 DOM 更改时,我正在调用 createUniqueId() 函数。
function createUniqueId(tag){
var children = tag.children();
if(children.length > 0)
{
for ( var i = 0; i < children.length; i++) {
var child = children[i];
var childId = $(child).attr("id");
if(childId == undefined)
{
var id = UUID.generate();
$(child).attr('id', id);
}
}
}
}
上面的代码为每个没有 id 的标签创建了一个唯一的 ID。
在分配 Id 时,会触发 DOMSubtreeModified 事件。
如何避免它在分配 ID 时触发 DOMSubtreeModified 事件?