在 gmail 网络聊天或任何其他网络聊天中,我们如何检测输入了一些新文本
在 gmail 中,这些是我执行检查元素时的属性
<div chat-dir="f" class="km" role="chatMessage" aria-live="assertive">
<div class="kk">
...
...
</div>
</div>
<div chat-dir="t" class="km" role="chatMessage" aria-live="assertive">
<div class="kk">
...
...
</div>
</div>
我使用了以下内容,但没有看到 alert()。由于文本附加到以前的一些 html 中,我们如何获取聊天数据进行处理
$("div.km").bind("DOMSubtreeModified", function() {
alert("tree changed");
});
或者我们可以使用 chat-dir 属性来获取数据
EDIT 1:
我为 gmail 聊天尝试了以下内容,即使我没有看到 alert()
$(".AD").bind("DOMSubtreeModified", function() {
alert("tree changed");
});
$("div.kk").bind("DOMSubtreeModified", function() {
alert("tree changed");
});
$('div.kk').on('webkitAnimationEnd animationend', 'div', function(e){
console.log(e.target.tagName.toLowerCase() + ' added!');
alert("heree")
});
$(document).ready(function() {
alert("hello world in ready");
$('div.no').on('webkitAnimationEnd animationend', 'div', function(e){
console.log(e.target.tagName.toLowerCase() + ' added!');
alert("heree")
});
$('div.no').change(function() {
alert('Handler for .change() called.');
});
$('div.kk').change(function() {
alert('Handler for .change() called.');
});
$('.kk').change(function() {
alert('Handler for .change() called.');
});
alert($('.kk').val());
$('km').bind('DOMNodeInserted DOMNodeRemoved', function(event) {
if (event.type == 'DOMNodeInserted') {
alert('Content added! Current content:' + '\n\n' + this.innerHTML);
} else {
alert('Content removed! Current content:' + '\n\n' + this.innerHTML);
}
});
});