此代碼工作正常:window.click不會在桌面瀏覽器火在Safari上爲iPad
$(window).click(function() {...});
但在Safari瀏覽器在iPad上,它根本不火。這不支持?當有人在瀏覽器窗口的某個地方觸摸時,正確的通知方式是什麼?
此代碼工作正常:window.click不會在桌面瀏覽器火在Safari上爲iPad
$(window).click(function() {...});
但在Safari瀏覽器在iPad上,它根本不火。這不支持?當有人在瀏覽器窗口的某個地方觸摸時,正確的通知方式是什麼?
JQuery UI支持設備的touch
。 。您可以在同一組事件上綁定點擊和觸摸偵聽器。
$(window).bind("click touchstart", function(){...});
嘗試像這樣
var clickOrTap = (typeof document.body.ontouchend === "undefined") ? 'click' : 'touchend';
$("body").on(clickOrTap, function() { ... });
它檢查設備具有touchend
事件,如果它不就意味着你在桌面上,所以聽者會等待click
。如果它定義了,那麼你在觸摸設備上,你可以聽觸摸事件。
希望我可以將兩者都標記爲答案,因爲您的幫助也是如此(特別是「touchstart」與「touch」),但我認爲「bind」語法更清晰。 –
您應該更新clickOrTap至:https://stackoverflow.com/a/13470899/1736186 – instead
感謝您的提示。順便說一句,這個事件似乎是「觸動」而不是「觸摸」。我編輯了答案以反映正確的代碼。 –