富贵资源网 Design By www.hznty.com
百度空间的弹出窗口和拖拽效果,看起来挺不错的。现在很多知名网站都是用的这样的技术。下面把我down的js代码发出来,我分析了一部分,但是还有很多东西不明白怎么回事,没有写注释的部分,还请高手能帮我解释一下。本人属于初学,有不对的地方还请多多指教。
在声明一条吧,此代码仅做学习用,技术版权属于百度。
主要是一个叫做:popup.js的文件,如下:
/**//*********************************************** popup.js**************************************************/
//为数组Array添加一个push方法
//为数组的末尾加入一个对象
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;
 }
 };

//对G函数的参数进行处理
function G()
{
 //定义一个数组用来保存参数
 var elements=new Array();
 //循环分析G中参数的内容
 for(var i=0;i<arguments.length;i++)
 {
 var element=arguments[i];

 //如果参数的类型为string,则获得以这个参数为ID的对象
 if(typeof element=='string')
 {
 element=document.getElementById(element);
 }
 //如果参数的长度为1
 if(arguments.length==1)
 {
 return element;
 }
 //将对象加入到数组的末尾
 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);
 };
 }
 }
);
123下一页阅读全文
富贵资源网 Design By www.hznty.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
富贵资源网 Design By www.hznty.com

《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线

暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。

艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。

《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。