Перехват кликов в мобильном Firefox

#firefox #mobile #click #intercept #fennec

#firefox #Мобильный #нажмите #перехват #фенек

Вопрос:

Я пытаюсь перехватить клик по ссылке (например, LINK) в мобильной версии Firefox, известной как Fennec.

Мой текущий выглядит примерно так:

 var appcontent = document.getElementById("appcontent"); // Firefox
if (!appcontent) {
    appcontent = event.currentTarget; // Fennec
}

appcontent.addEventListener("click", function(event) {      

    if(event.target.tagName.toLowerCase() == "a"){
        alert("click detected"   );
    }
 }, true);
  

По-видимому, event.target.tagName никогда не содержит тег a, но другие теги, такие как notificationbox и button. Мне это нужно, чтобы отличать кнопки javascript от кликов.

Кто-нибудь знает, что я делаю не так?

Ответ №1:

Вы пытаетесь таким образом перехватывать ссылки на что-либо на веб-странице?

В Fennec веб-страница выполняется в отдельном процессе, поэтому событие щелчка, которое вы видите в Chrome, не может быть нацелено на узел веб-страницы; в процессе Chrome такого объекта просто нет.

Если вы пытаетесь перехватить взаимодействие с веб-страницей, см.https://wiki.mozilla.org/Content_Process_Event_Handlers

Комментарии:

1. Действительно, я хотел перехватить нажатие на тег <a>. Большое спасибо, что перенаправили меня на эту страницу. Я предполагаю, что я упустил это из виду при поиске информации, но это, наконец, работает с примером кода, показанным в mozilla wiki.