2012-08-16 2 views
0

У меня есть демо, которое требуется для запуска в Firefox на планшете с сенсорным экраном Windows 7. Согласно this, Mozilla внедрила стандартизованный сенсорный API. Однако это не работает на планшете Windows 7. Ни одно из этих событий не запускается в FF 14.события «Parse» touch в Firefox

мы должны использовать событие MozTouchMove. Но все, что он делает, это отправка последовательных событий. WI.e. палец один, затем два пальца, а затем три пальца и т. д.

Трудно даже отличить два пальца от одного. Я должен был бы измерить расстояние между обновлениями, назначая свои собственные «ID» каждому «Региону». После этого, чтобы обнаружить перетаскивание с двумя пальцами, мы должны были убедиться, что синтаксический анализ остается таким же на всем протяжении - который, если один палец поднимается, может «отменить», поскольку «вторая» позиция перезаписывается «первой» позицией , Попытка придумать подход. Есть идеи?

ответ

0
// multitouch event handler for two finger scrolling in x or y 
function onTouchMove(event) { 

    var eventTouch = new point(event.clientX, event.clientY); 

    if (previousTouch.x == 0 && previousTouch.y == 0) { 
     previousTouch = new point(eventTouch.x, eventTouch.y);     
     return; 
    } 


    //filter really close touches 
    //in this case, assume single touch and defer to system mouse 
    if (previousTouch !== undefined) { 
     if (eventTouch.distance(previousTouch) < 6) { 
      return; 
     } 
    } 

    fingerIndex ++; 

    // only track every other touch to keep fingers consistent 
    if(fingerIndex % 2 == 0) 
    { 
     document.getElementById("finger1").style.left = previousTouch.x + "px"; 
     document.getElementById("finger1").style.top = previousTouch.y + "px"; 

     document.getElementById("finger2").style.left = eventTouch.x + "px"; 
     document.getElementById("finger2").style.top = eventTouch.y + "px"; 
    } 

    previousTouch = eventTouch; 
} 
0

Документ статуса связывание датирован июля 2010 - Mozilla был близко, два года назад. Итак, теперь вы используете однонаправленный API deprecated и пытаетесь реализовать мультитач - это обязательно станет уродливым. Документация на самом деле указывает на новый multi-touch API, который доступен с Firefox 12. Это позволяет вам правильно различать штрихи, и в документации подробно объясняется, как вы это сделаете.

+0

Я пробовал этот API на планшете, и он не работает. – FlavorScape

+0

Я просто попробовал еще раз, чтобы дважды проверить. Ни одно из событий от «стандартного» пожара API. Устаревшая версия - это все, что работает. Я отключил расширения, такие как firebug и т. Д., Если они захватывают события. не повезло. – FlavorScape

Смежные вопросы