Javascript 代码在Chrome中工作,但在IE中无限循环
我正在使用此代码动态更改span元素的文本。它在chrome中工作,只改变span的内容一次,但在IE中执行无限循环(计数不断更新,html文本不断变化)。有人知道我如何修复它或者它为什么会发生吗Javascript 代码在Chrome中工作,但在IE中无限循环,javascript,jquery,Javascript,Jquery,我正在使用此代码动态更改span元素的文本。它在chrome中工作,只改变span的内容一次,但在IE中执行无限循环(计数不断更新,html文本不断变化)。有人知道我如何修复它或者它为什么会发生吗 bindFlagUpdate(); function bindFlagUpdate(){ $(document).bind('flagGlobalAfterLinkUpdate', function(event, data) { var string = $('#like-'
bindFlagUpdate();
function bindFlagUpdate(){
$(document).bind('flagGlobalAfterLinkUpdate', function(event, data) {
var string = $('#like-' + data.contentId).html();
var getNum = string.match(/[0-9]+/g);
var count = getNum[0];
if(data.flagStatus == 'flagged') {
count++;
} else {
count--;
}
$('#like-' + data.contentId).html("1 user likes this");
$(document).unbind();
bindFlagUpdate();
return false;
});
}
活动说明:
将触发此事件的flagGlobalAfterLinkUpdate事件
更新标志链接后立即更新。(标记链接出现在
两种风格:“将此添加书签!”和“取消书签标记此!”,以及何时
说到“更新”,我们指的是外观上的变化)
偶数被附加到一个“flag”按钮上。要回答这个问题,我们需要了解更多关于事件
flagGlobalAfterLinkUpdate
及其触发方式的信息。听起来好像事件的回调函数中有什么东西在触发事件,所以一旦触发一次,它就会不断地触发自己。1首先,我认为string
是一个保留字,不应该使用。其次,您是否尝试过使用console.log进行调试?bindFlagUpdate调用bindFlagUpdate,您将此匿名函数绑定到该事件无数次!我不知道console.log是什么。对不起,我是新来的。但是我正在研究为什么需要在绑定内部解除绑定事件<代码>$(文档).unbind()代码>触发事件的内容之间可能存在差异。行:$('#like-'+data.contentId).html(“1个用户喜欢这个”);可能触发它?它应该只在有人点击“标记此”按钮时触发