这两个事件如何在javascript中同时变得可行

时间:2014-04-03 11:18:02

标签: javascript mouseover jsni mouseout

我有一个Label和弹出式面板,当鼠标移动到标签上时,弹出窗口将显示,当鼠标移出标签时,弹出窗口将隐藏。我已经完成了直到这个,但是当弹出窗口显示并且光标在其中移动时,弹出窗口将保持不变。我正面临着这两个事件不能同时工作的问题。

1 个答案:

答案 0 :(得分:0)

           var hideDelayTimer=null;
           var hideDelay=100;
           label.addEventListener("mouseover",function()
          {
            if(hideDelayTimer)clearTimeout(hideDelayTimer);

              alert('mouseover');
              label.appendChild(popup);     
          });

          label.addEventListener("mouseout",function()
            {   
            alert('mouseout');
            if(hideDelayTimer)clearTimeout(hideDelayTimer);
            hideDelayTimer=setTimeout(function()
            {
            hideDelayTimer=null;
            label.removeChild(popup);

           },hideDelay);