最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

jQuery基于$.ajax設置移動端click超時處理方法

 更新時間:2016年05月14日 11:41:28   作者:懶人  
這篇文章主要介紹了jQuery基于$.ajax設置移動端click超時處理方法,分析了click事件與touchstart事件的原理與處理技巧,需要的朋友可以參考下

本文實例講述了jQuery基于$.ajax設置移動端click超時處理方法。分享給大家供大家參考,具體如下:

這里介紹jquery click事件如何在移動端自動轉換成touchstart事件。

因為移動端click事件會比touchstart事件慢幾拍

移動設備某個元素上事件執(zhí)行順序是:

touchstart

touchmove

touchend

click{mousedown->mousemove->mouseup}

click事件在移動設備上雖然會識別但卻是最后一個執(zhí)行的,所以如果不把click事件換成touchstart事件的話,就可能造成延時導致交互上也慢了幾拍

所以在移動端最好把click事件換成touchstart事件。

那么如何添加事件比較簡單呢.

于是乎有了以下這種寫法:

var handle = function (e) {
  e.preventDefault(); // 阻止瀏覽器默認行為
  alert('fuck world');
}
$('body').on('touchstart mousedown', handle );

這樣在pc端瀏覽器上面alert只執(zhí)行一次,觸發(fā)的事件是mousedown

在ios設備safari瀏覽器上面alert也只執(zhí)行一次,觸發(fā)的事件是touchstart

為什么只執(zhí)行一次?

秘密在于當執(zhí)行的是touchstart后,preventDefault掉了后面的click就不執(zhí)行了,“非常完美”.

^_^! 一如既往的android設備蛋疼是必須的,測試發(fā)現除qq瀏覽器外其它瀏覽器都會alert兩次

也就是說touchstart和mousedown的handle函數都執(zhí)行了, 似乎是e.preventDefault()沒有起作用。具體原因不明...

因為要兼容,所以就沒辦法了只能通過判斷是否支持touch事件來分別添加事件了..

那就擴展一個jquery方法插件吧仿一個on方法的插件方法比如名稱為quickOn,(如果你連on方法怎么用都不知道,那你就走吧,離開這里...)

;(function(){
  var isTouch = ('ontouchstart' in document.documentElement) ? 'touchstart' : 'click';
   if(!$.fn.quickOn){
   $.fn.quickOn= function(){
    arguments[0] = (arguments[0] === 'click') ? isTouch: arguments[0];
    return $.fn.on.apply(this, arguments);
   };
  }
})();

quickOn雖然名字尷尬了一點,但是能用,例如:

$('body').quickOn('click', function(){
 alert('fuck world') ;
})

額。。后來想想,為什么不直接重載jquery的on方法呢??

來吧,試試

;(function(){
  var isTouch = ('ontouchstart' in document.documentElement) ? 'touchstart' : 'click', _on = $.fn.on;
   $.fn.on = function(){
    arguments[0] = (arguments[0] === 'click') ? isTouch: arguments[0];
    return _on.apply(this, arguments);
   };
})();

更多關于jQuery相關內容感興趣的讀者可查看本站專題:《jquery中Ajax用法總結》、《jQuery切換特效與技巧總結》、《jQuery拖拽特效與技巧總結》、《jQuery擴展技巧總結》、《jQuery常見經典特效匯總》、《jQuery動畫與特效用法總結》、《jquery選擇器用法總結》及《jQuery常用插件及用法總結

希望本文所述對大家jQuery程序設計有所幫助。

相關文章

最新評論

峨眉山市| 岫岩| 河北区| 镇康县| 台山市| 沅江市| 郧西县| 万宁市| 浦北县| 长宁区| 额敏县| 芒康县| 嘉峪关市| 台中县| 紫云| 巴青县| 平舆县| 阳高县| 敦煌市| 沅江市| 石林| 德保县| 和林格尔县| 原阳县| 凌海市| 迁安市| 华容县| 高雄县| 沛县| 永寿县| 儋州市| 河北区| 罗源县| 玉门市| 普格县| 余江县| 斗六市| 股票| 乐昌市| 井冈山市| 三台县|