回想起来,我已经好久没有写点啥了,尤其是关于Mootools方面的东西,因此今天写了一个标题闪烁的插件,练练手!
简单说一下这个插件的功能:该插件可以轻松的让您的<title>标题实现闪烁效果.
注意:我所使用的mootools的core版本是1.4.1,其他的版本我并未测试,如果您有测试的话麻烦短消息告知我测试结果,谢谢!
我们先来看一下这个插件的执行效果吧!如下图:
下边是这个插件的代码:
/** 插件:閃爍的標題 描述:該插件可以輕鬆讓您的<title>標題實現閃爍效果 參數: tit:(必填)需要在<title>上閃爍的內容 tim:[可選]閃動頻率,多少毫秒閃動一次 delay:[可選]延遲多少毫秒停止閃動 注意: 不管是變量還是方法,只要前邊有下劃綫的均為私有 用法: a=new xTitle(); a.Start({tit:'【短消息】',tim:200,delay:6000}); /**/ var xTitle=new Class({ Implements:[Options,Events], Opt:{ tim:280, //閃動頻率,多少毫秒閃動一次 tit:'', //要閃動的內容 delay:null, //延遲多少毫秒停止閃動 _mess:'', //全局標示符,標記現在需要閃動的內容 _title:'', //原始標題,即<title>標籤內的原始值 _timer1:'', //計時器句柄1 _timer2:'' //計時器句柄2 }, initialize:function(Opt){//初始化构造函数 this.setOptions(Opt);//設置Options if(!this.Opt.tit){return false;} }, _run:function(){ this.Opt._mess=(this.Opt._mess=='') ? this.Opt.tit : ''; $(document).getElement('title').set('text',this.Opt._mess+' '+this.Opt._title); this.Opt._timer1=this._run.delay(this.Opt.tim,this); }, _stop:function(){ clearTimeout(this.Opt._timer1); clearTimeout(this.Opt._timer2); $(document).getElement('title').set('text',this.Opt._title); return false; }, Start:function(o){ if(!o){return false;} this.Opt._title=$(document).getElement('title').get('text'); this.Opt.tim=(o.tim && !isNaN(o.tim)) ? o.tim.toInt() : this.Opt.tim; this.Opt.delay=(o.delay && !isNaN(o.delay)) ? o.delay.toInt() : this.Opt.delay; this.Opt.tit=(o.tit) ? o.tit : this.Opt.tit; if(this.Opt.delay){ this.Opt._timer2=(this._stop.delay(this.Opt.delay,this)); } this._run(); } }); a=new xTitle(); a.Start({tit:'【短消息】',delay:6000});
这个插件的使用方法如下:
//这是最完整的用法: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"><head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>www.7di.net</title> <meta name="generator" content="editplus" /> <meta name="copyright" content="www.7di.net" /> <script type="text/javascript" src="@img/mootools-core-1.4.1.js" onerror="alert('Error loading '+this.src);"></script> </head> <body> <script language="javascript"> a=new xTitle(); a.Start({tit:'【短消息】',tim:300,delay:6000}); </script> </body> </html> //不需要自定义闪烁频率的用法: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"><head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>www.7di.net</title> <meta name="generator" content="editplus" /> <meta name="copyright" content="www.7di.net" /> <script type="text/javascript" src="@img/mootools-core-1.4.1.js" onerror="alert('Error loading '+this.src);"></script> </head> <body> <script language="javascript"> a=new xTitle(); a.Start({tit:'【短消息】',delay:6000}); </script> </body> </html> //也不需要自动停止闪烁的用法: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"><head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>www.7di.net</title> <meta name="generator" content="editplus" /> <meta name="copyright" content="www.7di.net" /> <script type="text/javascript" src="@img/mootools-core-1.4.1.js" onerror="alert('Error loading '+this.src);"></script> </head> <body> <script language="javascript"> a=new xTitle(); a.Start({tit:'【短消息】'}); </script> </body> </html>