2013-03-27 46 views
0

我有一個問題。jquery檢測mouseup

該代碼在Firefox中正常工作,但在Chrome中它會混淆。

該代碼是相當基本的。 有一個背景的div。當jquery在這個div上創建時,我設置了一個間隔運行的函數。在mouseup時間間隔被清除。很簡單,對吧?

所以問題是這樣的。假設用戶在Chrome中右鍵單擊並顯示上下文菜單。或者他們拖動div。 mouseup事件不再註冊。

任何想法?

我有一個想法,我只是得到鼠標按鈕的狀態。但是,如果沒有老鼠甚至射擊,這似乎是不可能的。

 function mouseD(e){ 
      mouseE = e; 
      timer = setInterval(scroller, 50); 
      $(document).mouseup(function(){ 
       clearInterval(timer); 
      }); 
      //mouseB = e.button; 
      //mouseW = e.which; 
      //console.log(e.button + " D " + e.which); 
     } 
imgbox.mousedown(mouseD); 

編輯: 所以我設法解決通過禁止這種行爲的上下文菜單,拖動的問題。用戶不能再這樣做了。但是,如果用戶在鼠標懸停的同一時間點擊右鍵和左鍵,則永遠不會註冊。

+3

您應該發佈您的代碼,以便我們可以看到您做錯了什麼。 – srchulo 2013-03-27 22:11:08

回答