-1

我要更改的while循环条件是通过单击一个按钮来完成的,而第二个按钮继续循环并添加到一个计数器中。问题是代码不会等待 jQuery 加载,因此会创建一个无限循环。我无法使用 setInterval() 因为代码还包括我代码中其他地方使用的变量的计数器。

var condition = true;
while(condition === true) {
    $('#modal').modal();
    $('#modalButton1').on('click', function() {
        variableCounter++;
    });
    $('#modalButton2').on('click', function() {
        condition = false;
    });
}
4

1 回答 1

0

您正在循环click中连续分配事件处理程序。while相反,您应该在 document-ready 部分定义一次事件处理程序,然后将所需的功能(即单击按钮 2 时结束模式对话)放入这些单击事件的处理程序函数中。

$(function(){
  $('#modalButton1').on('click', function() { variableCounter++; });
  $('#modalButton2').on('click', function() { $('#modal').hide(); })
});

我不知道是否.hide()会达到你想要的。您应该在此处调用相关函数来关闭模态对话。

于 2013-09-11T05:48:18.980 回答