【发布时间】:2017-03-30 23:06:36
【问题描述】:
当用户在 Chrome 57 中工作时,.on("change") 事件的这一部分无法正常工作。这只是 Chrome 57 的问题。
if 中的 userId 变量在到达这段代码之前已设置并具有一个值。
但是,条件没有在应该为真时被发现。
但是,如果我正在调试并且设置了断点,我会在 if 上设置断点,然后我会在断点处停止并徘徊一段时间,这是否可以正常工作。
这不会影响所有使用 57 的人。
这个问题我只能重现两次,调试后就消失了。
知道发生了什么以及如何解决它吗?
我还要注意,我们使用的是非常旧的 jquery 版本 - 1.11.1,升级并不容易。
var selected = $(this).children("option:selected");
var name = selected.html();
var userId = selected.attr("value");
var personInList;
$("li", "#list1").add("li.person", "#list2").each(function () {
if ($(this).data("userId") == userId) {
personInList = $(this);
return;
}
});
if (userId && userId!= "default" && !personInList) {
//some code that gets triggered that shouldn't because this "if" is turning up true
}
【问题讨论】:
-
你可能会在它周围包裹一个 setTimeout 直到出现更好的东西
-
发布设置
userId的代码可能会有所帮助。 -
我也看到 Chrome 57 和 .data() 有一些问题。不太确定是什么问题,因为它不一致。当我们刷新页面时,它会随机中断。
标签: javascript jquery google-chrome