Posted in Javascript onMarch 22, 2007
prowin.js /** * @author ldgmc */ function PopWin(id,width,title){ this.id=id; this.width=width; this.title=title; this.createIns=function(){ var ins=document.createElement("div"); ins.className="popWin"; ins.id=this.id; ins.style.width=this.width+'px'; return ins; }; this.items=new Array(); this.instance=this.createIns(); this.init=function(){ this.addTitle(this.title); document.body.appendChild(this.instance); } this.addTitle=function(title){ var titleDiv=document.createElement("div"); titleDiv.className="title"; var titleText=document.createTextNode(title); titleDiv.appendChild(titleText); this.instance.appendChild(titleDiv); } this.addItem=function(id,title){ this.items[id]={}; this.items[id]["title"]=ldg.common.setClassName("div","itemTitle"); this.items[id]["title"].appendChild(document.createTextNode(title)); this.items[id]["content"]=ldg.common.setClassName("div","itemContent"); this.items[id]["title"].id=id; ldg.event.addEvent(this.items[id]["title"],"mouseover",this.mouseover.bindAsEventListener(this)) ldg.event.addEvent(this.items[id]["title"],"mouseout",this.mouseout.bindAsEventListener(this)); ldg.event.addEvent(this.items[id]["title"],"click",this.click.bindAsEventListener(this)); this.instance.appendChild(this.items[id]["title"]); this.instance.appendChild(this.items[id]["content"]); } this.addItemContent=function(parentId,imgUri,cssUri,isLast){ var itemDiv=ldg.common.setClassName("div","item"); var itema=document.createElement("a"); itema.href="#"; var itemImg=document.createElement("img"); itemImg.src=imgUri; itemImg.css=cssUri; ldg.event.addEvent(itemImg,"click",this.changeLink.bindAsEventListener(this)); itema.appendChild(itemImg); itemDiv.appendChild(itema); this.items[parentId]["content"].appendChild(itemDiv); if(isLast){ this.items[parentId]["content"].appendChild(document.createElement("br")); } } this.changeLink=function(e){ var eObj=e.srcElement || e.target; var link=document.getElementsByTagName("link"); link[1].href=eObj.css; } this.mouseover=function(e){ var eObj=e.srcElement || e.target; eObj.style.backgroundColor="#e5e5e5"; } this.mouseout=function(e){ var eObj=e.srcElement || e.target; eObj.style.backgroundColor="#EEEEEE"; } this.click=function(e){ var eObj=e.srcElement || e.target; var item=this.items[eObj.id]["content"]; item.style.display=="block"?item.style.display="none":item.style.display="block"; } this.init();
ldg.js var ldg=window.ldg || {} Array.prototype.append=function(item){ this[this.length]=item } Function.prototype.bindAsEventListener=function(obj){ var _method=this; return function(event){ return _method.call(obj,event || window.event); } } ldg.event={ addEvent:function(obj,evType,fun){ if(obj.addEventListener){ obj.addEventListener(evType,fun,false); return true; }else if(obj.attachEvent){ obj.attachEvent("on"+evType,fun); return true; }else{return false} } } ldg.common={ $:function(id){ return document.getElementById(id); }, setClassName:function(eleType,className){ var element=document.createElement(eleType) element.className=className; return element; } }
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>testBlog</title> <link rel=stylesheet type=text/css href="css/window.css"> <link rel=stylesheet type=text/css href="css/bg.css"> <script src="js/prpwin.js"></script> <script src="js/ldg.js"></script> <script> window.onload=function(){ var pop=new PopWin(1,440,"标题"); pop.addItem(1,"默认主题"); pop.addItem(2,"2222"); pop.addItem(3,"3333"); pop.addItem(4,"4444"); pop.addItemContent(1,"images/1.gif","css/bg2.css"); pop.addItemContent(1,"images/2.gif","css/bg3.css"); pop.addItemContent(1,"images/3.gif","css/bg4.css"); pop.addItemContent(1,"images/4.gif","css/bg5.css"); pop.addItemContent(1,"images/5.gif","css/bg6.css"); pop.addItemContent(1,"images/1.gif","css/bg7.css"); pop.addItemContent(1,"images/2.gif","css/bg8.css"); pop.addItemContent(1,"images/3.gif","css/bg9.css"); pop.addItemContent(1,"images/4.gif","css/bg0.css"); pop.addItemContent(1,"images/5.gif","css/bg4.css"); pop.addItemContent(1,"images/6.gif","css/bg2.css",true); pop.addItemContent(2,"images/7.gif","css/bg8.css"); pop.addItemContent(2,"images/8.gif","css/bg6.css"); pop.addItemContent(2,"images/9.gif","css/bg3.css"); pop.addItemContent(2,"images/10.gif","css/bg2.css"); pop.addItemContent(2,"images/11.gif","css/bg6.css"); pop.addItemContent(2,"images/12.gif","css/bg4.css",true); pop.addItemContent(3,"images/13.gif","css/bg9.css"); pop.addItemContent(3,"images/14.gif","css/bg1.css"); pop.addItemContent(3,"images/15.gif","css/bg7.css",true); pop.addItemContent(4,"images/4.gif","css/bg9.css"); pop.addItemContent(4,"images/5.gif","css/bg3.css"); pop.addItemContent(4,"images/1.gif","css/bg5.css"); pop.addItemContent(4,"images/2.gif","css/bg2.css"); pop.addItemContent(4,"images/3.gif","css/bg3.css"); pop.addItemContent(4,"images/4.gif","css/bg0.css"); pop.addItemContent(4,"images/5.gif","css/bg7.css"); pop.addItemContent(4,"images/1.gif","css/bg4.css"); pop.addItemContent(4,"images/2.gif","css/bg3.css"); pop.addItemContent(4,"images/4.gif","css/bg7.css"); pop.addItemContent(4,"images/5.gif","css/bg1.css"); pop.addItemContent(4,"images/4.gif","css/bg1.css",true); } </script> </head> <body> </body> </html>
用js实现的仿sohu博客更换页面风格(简单版)
声明:登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。
Reply on: @reply_date@
@reply_contents@