當用戶tap一個頁面元素時,iOS會在元素周圍顯示橙色的外框,以表明該元素被tap瞭。如果你想自己實現tap時的響應效果,可以用以下方法“去除”這個高亮效果。(來源)
-webkit-tap-highlight-color: rgba(0,0,0,0);
禁止用戶選擇頁面文字:(來源)
-webkit-user-select: none;
如果你響應onclick事件,會發現click事件有大約半秒的延遲,這是因為iOS需要等待一段時間來判斷用戶是點擊還是拖動。如想去掉這個延遲,可以用ontouchstart
代替onclick
:(來源)
$(".button").bind("touchstart", handler);
但這樣在桌面瀏覽器中鼠標點擊操作就不要用瞭。沒關系,可以做一下判斷。
if ('ontouchstart' in window) {
// mobile version
$(".button").bind("touchstart", handler);
} else {
// desktop version
$(".button").bind("click", handler);
}
禁止用戶拖動頁面:(來源)
document.ontouchstart = function(e){
e.preventDefault();
}
一些其他的信息:這裡