2
我想监视用contenteditable编辑的元素的nodeValue变化。基本上,我想在nodevalue的变化上运行一个函数。jQuery:观察nodevalue变化
我发现这个职位: http://james.padolsey.com/javascript/monitoring-dom-properties/
这似乎已经为我想要的插件。
这里的手表插件:
jQuery.fn.watch = function(id, fn) {
return this.each(function(){
var self = this;
var oldVal = self[id];
$(self).data(
'watch_timer',
setInterval(function(){
if (self[id] !== oldVal) {
fn.call(self, id, oldVal, self[id]);
oldVal = self[id];
}
}, 100)
);
});
return self;
};
举个例子,我可以看一个输入的值是这样的:
$('#input').watch('value', function(propName, oldVal, newVal){
$("#text").text(newVal);
});
但不是CONTENTEDITABLE的的nodeValue(其文本内容):
$('#ce').watch('nodeValue', function(propName, oldVal, newVal){
$("#text").text(newVal);
});
下面是现场示例:
任何人都知道如何使watch方法适用于nodevalue。谢谢!
感谢您的建议。问题发生了变化,div元素没有更改事件。这意味着复制和粘贴的文本将不会被保存。 – Jourkey