在做h5頁面時,發現ios快速點選螢幕時,會導致頁面上移,百思不得其解,眾裡尋他千百度,找到了解決方案。
//解決ios雙擊頁面上移問題
//在專案中測試不緊input/button這些表單控制元件有這個問題,p,div等也有問題,於是乎就直接在body開刀了
(function()
{
var agent = navigator.userAgent.toLowerCase(); //檢測是否是ios
var iLastTouch = null; //快取上一次tap的時間
if (agent.indexOf('iphone') >= 0 || agent.indexOf('ipad') >= 0)
{
document.body.addEventListener('touchend', function(event)
{
var iNow = new Date()
.getTime();
iLastTouch = iLastTouch || iNow + 1 /** 第一次時將iLastTouch設為當前時間+1 */ ;
var delta = iNow - iLastTouch;
if (delta < 500 && delta > 0)
{
event.preventDefault();
return false;
}
iLastTouch = iNow;
}, false);
}
})();
複製程式碼