События касания перетекают на следующую страницу? - PullRequest
0 голосов
/ 14 декабря 2011

У меня странная проблема, которая может быть чем-то удивительно глупым, о котором я не знаю, я постараюсь объяснить в надежде, что кто-то может помочь. Я тестирую это на iPad с iOS 5.

У меня есть page1.html и page2.html. На page1 у меня есть элемент, который я нажимаю, он запускает функцию JS, которая приводит меня к page2:

<div id="occasion" ontouchend="test();"></div>

function test(){
    window.location.href="page2.html";
}

Page2 пусто, кроме следующего, чтобы сообщить мне, если происходит событие щелчка:

<div style="background-color:red;position:fixed;width:100%;height:100%;" onclick="pageTest();">test</div>

function pageTest(){         
    alert("hello");
}

Итак, когда открывается page2, я получаю приветственное предупреждение, поэтому что-то перенесено с touchevent на предыдущей странице?

Page1 использует jQuery, PhoneGap и файл CSS. Если я поменяю touchend или touchstart на onclick все нормально?

Кто-нибудь знает, что может вызвать это, это действительно раздражает меня!

1 Ответ

1 голос
/ 14 декабря 2011

Для устранения этой проблемы я рекомендую зарегистрировать объект event на второй странице:

$('div:contains(test)').on('click', function (event) {
    console.log(event);
    //or if you don't have a console (GET A CONSOLE!) then you can alert the event type
    alert(event.type);
});

Это будет проверять, какое событие запускается, касаться или иным образом.1007 * является новым в jQuery 1.7 и совпадает с .bind() в этом случае.

...