国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

讀jQuery之九 一些瑕疵說明

2019-11-20 23:47:24
字體:
來源:轉載
供稿:網友
1,bind 方法,最后一個參數fn是多余的
復制代碼 代碼如下:

// Handle object literals
if ( typeof type === "object" ) {
for ( var key in type ) {
this[ name ](key, data, type[key], fn);
}
return this;
}

2,注釋
復制代碼 代碼如下:

// Add which for click: 1 === left; 2 === middle; 3 === right

應修改為
復制代碼 代碼如下:

// Add which for mousedown/mouseup : 1 === left; 2 === middle; 3 === right

3,data方法,定義了局部變量internalKey,但后續代碼仍然沿用jQuery.expando。
復制代碼 代碼如下:

var internalKey = jQuery.expando, getByName = typeof name === "string", thisCache,

4,jQuery.event.add方法,arguments改為e,apply改為call 更好一些。因為只會傳一個參數:事件對象。
復制代碼 代碼如下:

elemData.handle = eventHandle = function( e ) {
// Discard the second event of a jQuery.event.trigger() and
// when an event is called after a page has unloaded
return typeof jQuery !== "undefined" && (!e || jQuery.event.triggered !== e.type) ?
jQuery.event.handle.apply( eventHandle.elem, arguments ) :
undefined;

};

5,基于 “勿重復檢測瀏覽器” 原則,jQuery.event.add 以下代碼
復制代碼 代碼如下:

if ( elem.addEventListener ) {
elem.addEventListener( type, eventHandle, false );

} else if ( elem.attachEvent ) {
elem.attachEvent( "on" + type, eventHandle );
}

應該使用以下來替換
復制代碼 代碼如下:

jQuery.addEvent = document.addEventListener ?
function( elem, type, handle ) {
if ( elem.addEventListener ) {
elem.addEventListener( type, handle, false );
}
} :
function( elem, type, handle ) {
if ( elem.attactEvent ) {
elem.attactEvent( "on" + type, handle );
}
};

事實上,jQuery中已經有了jQuery.removeEvent,卻不知為何沒有jQuery.addEvent。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 仲巴县| 开鲁县| 石嘴山市| 筠连县| 宜宾市| 进贤县| 疏附县| 南雄市| 信阳市| 峨边| 芮城县| 雷州市| 都匀市| 光泽县| 平潭县| 游戏| 南宁市| 栖霞市| 彰化县| 基隆市| 彭山县| 南开区| 五峰| 怀远县| 德钦县| 天镇县| 东海县| 华蓥市| 双峰县| 湘潭市| 电白县| 巩义市| 新野县| 嘉兴市| 芜湖市| 天柱县| 辽中县| 田林县| 栖霞市| 太仆寺旗| 开鲁县|