一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

百度空間的popup效果分析第1/3頁(yè)

百度空間的彈出窗口和拖拽效果,看起來(lái)挺不錯(cuò)的。現(xiàn)在很多知名網(wǎng)站都是用的這樣的技術(shù)。下面把我down的js代碼發(fā)出來(lái),我分析了一部分,但是還有很多東西不明白怎么回事,沒有寫注釋的部分,還請(qǐng)高手能幫我解釋一下。本人屬于初學(xué),有不對(duì)的地方還請(qǐng)多多指教。
在聲明一條吧,此代碼僅做學(xué)習(xí)用,技術(shù)版權(quán)屬于百度。
主要是一個(gè)叫做:popup.js的文件,如下:
/**//*********************************************** popup.js**************************************************/
//為數(shù)組Array添加一個(gè)push方法
//為數(shù)組的末尾加入一個(gè)對(duì)象
if(!Array.prototype.push)
{
 Array.prototype.push=function ()
 {
 var startLength=this.length;
 for(var i=0;i<arguments.length;i++)
 {
 this[startLength+i]=arguments[i];
 }
 return this.length;
 }
 };

//對(duì)G函數(shù)的參數(shù)進(jìn)行處理
function G()
{
 //定義一個(gè)數(shù)組用來(lái)保存參數(shù)
 var elements=new Array();
 //循環(huán)分析G中參數(shù)的內(nèi)容
 for(var i=0;i<arguments.length;i++)
 {
 var element=arguments[i];

 //如果參數(shù)的類型為string,則獲得以這個(gè)參數(shù)為ID的對(duì)象
 if(typeof element=='string')
 {
 element=document.getElementById(element);
 }
 //如果參數(shù)的長(zhǎng)度為1
 if(arguments.length==1)
 {
 return element;
 }
 //將對(duì)象加入到數(shù)組的末尾
 elements.push(element);
 };
 return elements;
};

Function.prototype.bind=function (object)
{
 var __method=this;
 return function ()
 {
 __method.apply(object,arguments);
 };
};

//綁定事件
Function.prototype.bindAsEventListener=function (object)
{
 var __method=this;
 return function (event){__method.call(object,event||window.event);};
};


Object.extend=function (destination,source)
{
 for(property in source)
 {
 destination[property]=source[property];
 };
 return destination;
};


if(!window.Event)
{
 var Event=new Object();
};

Object.extend(
 Event,

 {
 observers:false,
 element:function (event)
 {
 return event.target||event.srcElement;
 },

 isLeftClick:function (event)
 {
 return (((event.which)&&(event.which==1))||((event.button)&&(event.button==1)));
 },

 pointerX:function (event)
 {
 return event.pageX||(event.clientX+(document.documentElement.scrollLeft||document.body.scrollLeft));
 },

 pointerY:function (event)
 {
 return event.pageY||(event.clientY+(document.documentElement.scrollTop||document.body.scrollTop));
 },

 stop:function (event)
 {
 if(event.preventDefault)
 {
 event.preventDefault();
 event.stopPropagation();
 }
 else 
 {
 event.returnValue=false;
 event.cancelBubble=true;
 };
 },

 findElement:function (event,tagName)
 {
 var element=Event.element(event);
 while(element.parentNode&&(!element.tagName||(element.tagName.toUpperCase()!=tagName.toUpperCase())))
 element=element.parentNode;
 return element;
 },

 _observeAndCache:function (element,name,observer,useCapture)
 {
 if(!this.observers)
 this.observers=[];
 if(element.addEventListener)
 {
 this.observers.push([element,name,observer,useCapture]);
 element.addEventListener(name,observer,useCapture);
 }
 else if(element.attachEvent)
 {
 this.observers.push([element,name,observer,useCapture]);
 element.attachEvent('on'+name,observer);
 };
 },

 unloadCache:function ()
 {
 if(!Event.observers)
 return;
 for(var i=0;i<Event.observers.length;i++)
 {
 Event.stopObserving.apply(this,Event.observers[i]);
 Event.observers[i][0]=null;
 };
 Event.observers=false;
 },

 observe:function (element,name,observer,useCapture)
 {
 var element=G(element);
 useCapture=useCapture||false;
 if(name=='keypress'&&(navigator.appVersion.match(/Konqueror|Safari|KHTML/)||element.attachEvent))
 name='keydown';
 this._observeAndCache(element,name,observer,useCapture);
 },

 stopObserving:function (element,name,observer,useCapture)
 {
 var element=G(element);
 useCapture=useCapture||false;
 if(name=='keypress'&&(navigator.appVersion.match(/Konqueror|Safari|KHTML/)||element.detachEvent))
 name='keydown';
 if(element.removeEventListener)
 {
 element.removeEventListener(name,observer,useCapture);
 }
 else if(element.detachEvent)
 {
 element.detachEvent('on'+name,observer);
 };
 }
 }
);

JavaScript技術(shù)百度空間的popup效果分析第1/3頁(yè),轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 久久艹综合 | 一区二区三区四区亚洲 | 91精品福利老司机在线观看 | 在线国产福利 | 天天色天天操天天 | 午夜网站入口 | 九月色婷婷 | 精品久久网 | 日韩一区视频在线 | 亚洲第一性网站 | 亚洲a人 | 亚洲国产精品自在在线观看 | 国产图片综合 | 蕾丝视频成人★在线观看 | 欧美jizzdh精品巨大 | 人人做人人爽人人爱秋霞影视 | 最新国产精品亚洲二区 | 91国视频在线 | 99国产精品九九视频免费看 | 国产女人视频 | 国产一区二区在线播放 | 国产精品欧美亚洲韩国日本久久 | 视色4se影院在线观看 | 亚洲欧美日韩国产色另类 | 高清一区二区三区 | 国产真实乱子伦精品视 | 国产精品免费入口视频 | 成年ssswww中国女人 | 国产午夜人做人免费视频中文 | 一本色道久久88亚洲精品综合 | 一区二区美女视频 | 99久久精品国产片 | 国产成人自啪精品视频 | 91麻豆国产免费观看 | 亚州激情 | 日日爱影院 | 天天做天天玩天天爽天天 | 久久国产乱子伦精品免费不卡 | 久久综合久久久久 | 午夜hhh视频在线观看hhhh | 在线视频一区二区三区四区 |