2012-12-28 125 views
0

我在E-learning項目上工作了一段時間,在那裏我不得不編寫一個加載到全局框架上的HTML文件。我用:JavaScript - 在iPad/iPhone上未觸發的mousemove事件

$('#myobject').on('mousedown' ... 'mousemove' ... 'mouseup' , function(){}

,效果不錯無處不在(瀏覽器,IE瀏覽器,iOS版...等)

現在我在個人項目上工作,並在瀏覽器一切運行良好,但'mousemove'似乎不會觸發iDevices(iPad,iPhone等)。

下面是簡單的代碼我寫的,這並不在iPad上運行:

 
    $(window).load(function() { 

     document.ontouchmove = function(e){ 
      e.preventDefault(); 
     } 

     $(document).on('mousemove',onmm); 
     function onmm(e){ 
      var a = e.pageX; 
      var b = e.pageY; 
      $('#txt1').html(a); 
      $('#txt2').html(b); 
     } 

    }); 

任何幫助嗎?

+1

所以你用你公司的專有框架爲自己的寵物項目的東西(順便說一句,你確定它是合法的,這樣做的?),它不工作,並希望得到來自我們的幫助 - 誰沒有在這個框架下工作? – ppeterka

+2

在觸控設備上,根據觸摸事件*模擬*鼠標事件。如果你正在殺死「touchmove」的默認行爲,那麼你可能會阻止「mousemove」的合成。 – Pointy

+0

ppeterka,你是什麼意思哥們?因爲當你可以從HTML - CSS - Javascript提供的代碼是非法的?除了你可以縮小你的腳本(這是我與之合作的公司的情況),沒有任何boddy可以說COPY是非法的 - 粘貼代碼(即使我沒有這樣做)...你我已經知道這個了。一個幫助會更好! – Sachou

回答

2

只要使用jquery.event.move。移動事件提供了一種在鼠標和觸控設備上設置按下移動釋放交互的簡單方法。所以你不必擔心你的用戶擁有哪個設備。

來源和實例:http://stephband.info/jquery.event.move/

+0

非常感謝,非常有幫助。 – Sachou

+0

今天試過,並沒有爲我工作 – Purefan