在bootstrap中使用切换按钮的Javascript mouseup事件 - 事件过早触发

时间:2014-01-02 22:02:47

标签: javascript twitter-bootstrap mouseup

当用户点击一系列按钮中的按钮时,我希望浏览器能够在点击它们后立即检测到哪些按钮被切换。

以下是一个示例:http://jsfiddle.net/Uc6LV/11/

  • 尝试点击“一个”(没有任何反应)
  • 现在点击“两个”,它将显示“一个”(之前点击的一个

我将事件监听器从click更改为mouseup但是它似乎仍然过早地触发了该事件。

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

在你的事件监听器中,我会监听“click”事件并通过setTimeout()延迟实际计算。这适用于你的小提琴:

 container.children[i].addEventListener("click", //click is better than mouseup
            function(){
                //let's delay execution until button is toggled
                setTimeout(function() {
                    notice.innerHTML = toggled().toString(); }, 1);
        })