<pre name="code" class="html">body{
font-family:"Helvetica","Arial",sans-serif;
color:#333;
background-color:#ccc;
margin:1em 10%;
}
h1{
color:#333;
background-color:transparent;
}
a{
color:#c60;
background-color:transparent;
font-weight:bold;
text-decoration:none;
}
ul{
padding:0;
}
li{
float:left;
padding:1em;
list-style:none;
}
#imagegallery{
list-style:none;
}
#imagegallery{
display:inline;
}
#imagegallery li a img{
border:0;
}
function addLoadEvent(func){ var oldonload=window.onload; if(typeof window.onload!='function') window.onload=func; else {window.onload=function(){ oldonload(); func();} }}function insertAfter(newElement,targetElement){ var parent=targetElement.parentNode; if(parent.lastChild==targetElement)parent.appendChild(newElement); elseparent.insertBefore(newElement,targetElement.nextSibling); //还有一个previousSibling可以用呢}function preparePlaceholder(){ if(!document.createElement) return false; if(!document.createTextNode) return false; if(!document.getElementById) return false; if(!document.getElementById("imagegallery")) return false; var placeholder=document.createElement("img"); placeholder.setAttribute("id","placeholder"); placeholder.setAttribute("src","images/1.jpg"); placeholder.setAttribute("alt","我仅仅只是个占位的"); var description=document.createElement("p"); description.setAttribute("id","description"); var desctext=document.createTextNode("choose an image"); description.appendChild(desctext); //document.getElementsByTagName("body")[0].appendChild(placeholder); //document.getElementsByTagName("body")[0].appendChild(description); var gallery=document.getElementById("imagegallery"); insertAfter(placeholder,gallery); insertAfter(description,placeholder); if(!document.getElementById("description")) return false; console.log("成功创建description");} function prepareGallery(){ if(!document.getElementsByTagName||!document.getElementById) return false; if(!document.getElementById("imagegallery")) return false; var gallery=document.getElementById("imagegallery"); var links=gallery.getElementsByTagName("a"); for(var i=0;i<links.length;i++) {links[i].onclick=function(){ return showPic(this); } //links[i].onkeypress=links[i].onclick; } console.log("prepareGallery");}function showPic(whichpic){ if(!document.getElementById("placeholder")) return true; if(!document.getElementById("description")) return false; console.log("我敢保证这里不会出来1"); var source = whichpic.getAttribute("href"); var placeholder = document.getElementById("placeholder"); if(placeholder.nodeName!="IMG") return true;//IMG什么鬼 placeholder.setAttribute("src",source); var text=whichpic.getAttribute("title")?whichpic.getAttribute("title"):""; var description=document.getElementById("description"); if(description.firstChild.nodeType==3){ //description.childNodes[0].nodeValue=text; //这一句和下一句完全等价 description.firstChild.nodeValue=text;} return false;}addLoadEvent(preparePlaceholder);addLoadEvent(prepareGallery);
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<meta http-equiv="content-type" content="text/html";charset="utf-8"/>
<title>Image Gallery</title>
<script type="text/javascript" src="scripts/showPic.js"></script>
<link rel="stylesheet" href="styles/layout.css" type="text/css" media="screen"/>
</head>
<body>
<h1>Snapshot</h1>
<ul id="imagegallery">
<li>
<a href="images/1.jpg" title="测试">
<img src="images/thumbnail_1.jpg" alt="0.0"/>
</a>
</li>
<li>
<a href="images/5.png" title="an icon" >
<img src="images/thumbnail_5.jpg" alt="0.0"/>
</a>
</li>
<li>
<a href="images/lena.bmp" title="bmp" >
<img src="images/thumbnail_lena.jpg" alt="0.0"/>
</a>
</li>
<li>
<a href="images/ceshi.jpg" title="人" >
<img src="images/thumbnail_ceshi.jpg" alt="0.0"/>
</a>
</li>
</ul>
</body>
</html>