[教程]Blogbus模板制作(4)——自定义页面载入的loading风格 - [电脑技术]
似乎很久没有写关于blogbus模板的教程了。这次写一篇页面效果的。算是当初预定的“画龙点睛”篇的开篇吧。
这次任务的目标是使blog在载入完成之前显示一个模态(所谓模态就是在这个阶段未执行完毕时无法进入下一个阶段的操作)的Loading字样。待页面载入完毕灰色的模态层消失。
实现的思路很简单,在页面里加入一个loading的元素,然后页面加载完成就去掉它!
首先是找素材,我这里就直接应用blogbus后台管理中thickbox自带的loading图标了。
地址是:http://www.blogbus.com/user/images/loadingAnimation.gif
如果不想用这个素材,可以到这里去找:http://www.ajaxload.info/
然后就是为模态层书写相应的css。打开CSS,在末尾追加以下样式:
width:100%;
height:100%;
background:#000 url(http://www.blogbus.com/user/images/loadingAnimation.gif) no-repeat 50% 50%;
opacity:0.5;/*标准浏览器支持 ie6不支持*/
position:fixed;
z-index:1000;
}
打开HEAD,在最下面追加
<style type="text/css">
#load{
filter:progid:DXImageTransform.Microsoft.Alpha(opacity='50');
position:absolute;
z-index:1000;
}
</style>
<![endif]-->
<script type="text/javascript">
//<![CDATA[
function onloading(){setTimeout(function(){var o=document.getElementById("load");o.parentNode.removeChild(o);},1200);}
if(window.addEventListener){window.addEventListener("load", onloading, false);}
else if (window.attachEvent){window.attachEvent("onload", onloading);}
else {window.onload = onloading;}
//]]>
</script>
被if IE包围的条件注释部分是只有IE能识别的代码块,可以加在html内,用以区分针对IE浏览器的代码。对IE应用CSS滤镜,实现半透明的效果。接下来的js代码用来在载入完成后的1.2s清除id为load的DOM元素。
然后,主角该登场了(大家给点掌声嘛~~)!进入INDEX和DETAIL,分别在代码顶部加入
恩!大功告成,去试一下看吧~~
总结:这个小技巧不难实现,跨浏览器兼容性也不错,但是在页面内添加了无意义的标签,这似乎有些不符合Web标准所倡导的精神了。
随机文章:
收藏到:Del.icio.us



![记得邮件哦 arthuridea[at]gmail.com](http://files.blogbus.com/arthuridea.blogbus.com/files/12067827100.gif)




















评论
我是一個陌路人啦,今天偶然google到這篇教程,心里頓時燃起了希望呢。技術上來講,loading 頁面的素材必須是圖片文件嗎? .swf 可以嗎?我一直很想讓自己的不裸閣有一個這樣的loading 頁面:
http://www.johnnyhollowmusic.com/2003/index2.html。
不知道可不可以達成呢?
回不回復都謝謝你~
高手,麻烦您帮我看看哪里出了问题啊~~??
http://skin-preview.366373.blogbus.com/
密码123456789.
重新弄了一个blogbus.改个新样子也那么难!!
{#face:17}
但是我的loading错位了.
怎么弄呀?可以说一下吗?谢谢你了
-v-. 限制访问了哟``
好似我一辈子都搞不会的了。...
看着都头大...
想知道怎么把head那里 就是博客名换成图片。
也想把BUS模板的自带图片弄掉。
把右边的副栏移到body下面。...
梦想太美好。就是不会做。
败了..........
呃。。。对于初学者 确实有些不好弄。。。呃。。。慢慢来吧。。
失败乃成功之母啊。搞定,哈哈!{#face:3}{#face:3}
谢谢哦。
不过,我在我的旧模板系统不能使用,
不知道是我放错地方了,还是的确有问题。
呵呵 {#face:11}
你博客里的代码复制粘贴后
就没有换行符了
全挤到一块了~
为啥多了个loading
原来如此 嘿嘿
拜海喵酱……
赞啊~
白天再尝试放在我那里~~嘿嘿。要是实现不了再回来找你哦~
美其名曰是保持与bus风格的统一性,实际上是懒的做图。。。。
and...你的blog超漂亮的~~