我有这个 Javascript/jQuery 代码:
for (i = 0; i < 100; i++) {
if(!(html == $("#chat-box").html()))
{
$("#chat-box").html(html);
console.log("a");
}
}
我在 for 循环中迭代了 100 次。您可能会认为至少在第一次之后它会停止迭代,除非两个值之一发生更改(它们没有更改),但事实并非如此。我不知道为什么。我尝试使用 if(htm1 != ...)
但这不起作用。
最佳答案
我相信使用 text() 方法进行比较会解决问题:
if(!(html == $("#chat-box").text()))
{
$("#chat-box").html(html);
}
原因是 jQuery 处理文本以防止 html() 出现特殊字符问题,而与 text() 一样,它返回原始值。如果仍然不起作用,请使用 console.log() 输出两个方法返回值和比较变量,以便更好地可视化。
关于javascript - 当值相同时 if 语句会重复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25655658/