2010十一月8
js 在网站打开慢的时候,提示
在网上扒了一段代码,也许各位在打开Gmail 或 扣扣邮箱的时候,都会提醒您网速过慢,建议采用基本视图打开。
而所谓的基本视图就是去掉了一些华丽的外衣,只保留最基本的,用户真正需要的功能性的东西,虽然丑了点,但是最少用户可以正常使用,可以很方便的提高用户的感知。
下面的代码在扣扣邮箱那里弄过来的,把混淆后的代码整理了一下,放在下面,思路还是蛮清晰的 ^_^
(function(win){
var eventName = 'load';
var bodyElement ;
var tipElement ;
var checkSpeed = setTimeout(function(){
!(bodyElement = win.document.body) ? setTimeout(arguments.callee,300) : (win.closeTips = function(){tipElement.style.display = 'none';}) &&
(bodyElement.insertBefore(tipElement = win.document.createElement("span"),bodyElement.firstChild).innerHTML = 'demo<a href="#" onclick="closeTips();return false;">关闭</a>');
},20000);
(win.attachEvent ? (eventName = "on" + eventName) && attachEvent : addEventListener)(eventName,function(){
alert('here');
clearTimeout(checkSpeed);
},false);
})(window);
var eventName = 'load';
var bodyElement ;
var tipElement ;
var checkSpeed = setTimeout(function(){
!(bodyElement = win.document.body) ? setTimeout(arguments.callee,300) : (win.closeTips = function(){tipElement.style.display = 'none';}) &&
(bodyElement.insertBefore(tipElement = win.document.createElement("span"),bodyElement.firstChild).innerHTML = 'demo<a href="#" onclick="closeTips();return false;">关闭</a>');
},20000);
(win.attachEvent ? (eventName = "on" + eventName) && attachEvent : addEventListener)(eventName,function(){
alert('here');
clearTimeout(checkSpeed);
},false);
})(window);
大家可以使用 firebug 在 FF 上面,打开百度,试一下哦~
文章作者:simaopig
本文地址:http://www.xiaoxiaozi.com/2010/11/08/1983/
版权所有 © 转载时必须以链接形式注明作者和原始出处!
好久没抢占到沙发了。
这个可以加到自己网站上,不过要把时间调整到3秒,我那个正常就那速度( ̄_ ̄|||)
[回复]
@LAONB
不是3秒啦,20秒,那个20秒后又300毫秒内如果还没有到body 就重新执行此函数。呵。
PS:我这的沙发有的是。呵。
[回复]
再简化下,这个看上去还是没有function好看
[回复]
@TaoGOGO
呵,再简化,就把 var 写成一行 。
而如果变量名啥的换成原来那种混淆过的,是短了,不过太难理解了。呵。
[回复]
扣扣邮箱都没用过,俺用的网易的
[回复]
唉 . 没看懂呀- – .. 你写这个太不适合新手了. 也不给解释解释- – .. 55555555555555555555 :sad:
[回复]
菜鸟 刚才试用了下 结果是在网页最上边显示
能不能弄个 跟QQ一样的 把全屏盖住的
[回复]
补充一下 在增加一个 /body 返回的时候自动关闭 提示窗口功能
[回复]
@零落
呃,把全屏盖住,这种可以用样式控制,不过我CSS比较白痴。
提示关闭功能,加一个 self.close就可以了吧?猜的。
[回复]