css下margin、padding、border、background和font縮寫示例
735
2024-04-05
本文實例講述了jQuery實現獲取綁定自定義事件元素的方法。分享給大家供大家參考,具體如下:
(function ($) { // 自定義itemtab事件 $.fn.bind = function(types, data, fn) { // 重載jQuery.fn.bind方法,用來截獲綁定自定義事件的元素 if(typeof types == 'string' && 'itemtab' == types) { var itemTouchStart = -1; // touchstart位置 var itemTouchMove = -1; // touchend位置,值為-1時表示未觸發 var itemTriggerDistance = 0; // 拖動距離閥值,若大于該值則為拖動列表,若小于等于該值則為點擊列表項 var itemMoved = false; // 列表是否為拖動狀態 $(this).bind('touchstart', function (event) { if(!event.originalEvent.touches.length) return true; itemMoved = false; itemTouchStart = event.originalEvent.touches[0].pageX; // 記錄起始位置 }).bind('touchmove', function (event) { if(!event.originalEvent.touches.length) return true; itemTouchMove = event.originalEvent.touches[0].pageX; // 當前拖動位置 //console.log('touchmove:', itemTouchStart, itemTouchMove, itemMoved); if(Math.abs(itemTouchMove - itemTouchStart) > itemTriggerDistance) { itemMoved = true; // 列表被拖動 } }).bind('touchend', function (event) { //console.log('itemMoved:', itemMoved); if(itemMoved) { // 列表被拖動過,非點擊操作 return true; } $(this).trigger('itemtab'); // 觸發自定義事件 }); } return this.on( types, null, data, fn ); // 這種做法具有侵入性,多個類似的代碼會相互覆蓋,可采用深度復制方式調用原$.fn.bind方法 } })(jQuery);
希望本文所述對大家jQuery程序設計有所幫助。
#免責聲明#
本站[綠夏技術導航]提供的一切軟件、教程和內容信息僅限用于學習和研究目的;不得將上述內容用于商業或者非法用途,否則,一切后果請用戶自負。本站信息來自網絡收集整理,版權爭議與本站無關。您必須在下載后的24個小時之內,從您的電腦或手機中徹底刪除上述內容。如果您喜歡該程序或內容,請支持正版,購買注冊,得到更好的正版服務。我們非常重視版權問題,如有侵權請郵件[admin@lxwl520.com]與我們聯系進行刪除處理。敬請諒解!