我有一个用户名,它可以在第一次点击时完美地工作。但是,第二次单击将停止工作,并且不会执行任何操作。你有什么想法来解释为什么会这样吗?
var $username = $('<span class="username" data-value="' + message.user + '"></span>');
$username.text('@' + message.user + ': ');
$(".username").click(function(){
var username = $(this).data("value");
var userIndex = users[username].length - 1;
while(userIndex >= 0) {
console.log('hello', username)
userIndex -= 1;
}
});发布于 2021-08-24 03:14:16
在这里尝试$(".username").toggle(function(){,您可以在jquery文档中看到有关切换事件Jquery toggle() event的信息
发布于 2021-08-24 03:16:03
我认为问题是,一旦你点击按钮,整个函数就会被执行,也就是说,while循环会完全执行,直到条件变为false,所以所有的迭代都会在一次点击中完成,当你再次点击时,它就不起作用了……
尝试此解决方案:
不使用while循环,而是使用forEach并将单击事件放在forEach函数中,因此对于每次迭代,您可以反复单击以获得结果,直到最后一个元素。
https://stackoverflow.com/questions/68901290
复制相似问题