gpt4 book ai didi

jquery - 使用 JQuery 检测段落元素变化

转载 作者:行者123 更新时间:2023-12-03 22:32:08 25 4
gpt4 key购买 nike

JQuery 中是否可以检测段落内容是否已更改?

我尝试了下面的代码。

<p id="test">Text</p>
<button id="submit1">change</button>

-

$(document).on("click", "#submit1", function () {
var d = new Date();
var time = d.getHours() + ":" + d.getMinutes() + ":" + d.getSeconds();
$("#test").text(time);
});
$(document).on("change", "#test", function () {
alert("Paragraph changed");
});

JSFiddle:http://jsfiddle.net/nnbqye55/

我想我错过了一些明显的东西。

最佳答案

change 事件不会在段落上触发。您需要的是所谓的“突变观察者”。 Here是相关的MDN文档。他们有pretty good浏览器渗透率;对于较旧的 IE,您可能可以使用已弃用的 Mutation Events,尽管众所周知这些事件是性能 killer ,所以要非常小心。我将使用突变观察者重写您的示例;您还可以查看 jsFiddle demo :

$(function(){
//Store the test paragraph node
var test = $('#test');

//Function to change the paragraph
var changeParagraph = function () {
var d = new Date();
var time = d.getHours() + ":" + d.getMinutes() + ":" + d.getSeconds();
test.text(time);
};

//Bind the paragraph changing event
$('#submit1').on('click', changeParagraph);

//Observe the paragraph
this.observer = new MutationObserver( function(mutations) {
alert('Paragraph changed!')
}.bind(this));
this.observer.observe(test.get(0), {characterData: true, childList: true});
});

关于jquery - 使用 JQuery 检测段落元素变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27541004/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com