body{ font-family:"Arial",serif;color:#333; background#ccc; margin:1em 10%;}
h1{color:#333; background:transparent;}
a{ color:#333; font-weight:bold; text-decoration:none;}
ul{padding:0;}
li{ float:left; padding:1em; list-style:none; border-right:solid 1px #ccc;}
#p_w_picpathgallery:after{ content: "."; clear:both; height:0; visibility:hidden; display:block; }
#placeholder{ width:400px; height:300px;}
img{ display:block; clear:both}
.icon{display:inline-block;width:16px;height:16px; vertical-align:top; background:url(smicon.png) no-repeat; padding-left:10px;}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Image Gallery</title>
<script src="test.js"></script>
<link href="test.css" type="text/css" rel="stylesheet" />
</head>
<body>
<h1>Snapshots</h1>
<ul id="p_w_picpathgallery">
<li >
<a href="DSC00034.jpg" title="A fireworks display" >Fireworks</a>
</li>
<li>
<a href="DSC00035.jpg" title="A cup of black coffee" >Coffee</a>
</li>
<li>
<a href="DSC00045.jpg" title="A red.red rose" >Rose</a>
</li>
<li>
<a href="DSC00033.jpg" title="The famous clock">Big Ben</a>
</li>
</ul>
</body>
</html>
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); }else{ parent.insertBefore(newElement,targetElement.nextSibling); } } function preparePlaceholder(){ //DOM if(!document.createElement) return false; if(!document.createTextNode) return false; if(!document.getElementById) return false; if(!document.getElementById("p_w_picpathgallery")) return false; var placeholder = document.createElement("img"); placeholder.setAttribute("id","placeholder"); placeholder.setAttribute("src","placeholder.gif"); placeholder.setAttribute("alt","my p_w_picpath gallery"); var description = document.createElement("p"); description.setAttribute("id","description"); var desctext = document.createTextNode("Choose an p_w_picpath"); description.appendChild(desctext); /* document.getElementsByTagName("body")[0].appendChild(placeholder);//document.body.appendChild(palceholder); document.getElementsByTagName("body")[0].appendChild(description);//document.body.appendChild(description); */ var gallery = document.getElementById("p_w_picpathgallery") //gallery.parentElement.insertBefore(placeholder,gallery); //gallery.parentElement.insertBefore(descriptio,gallery); insertAfter(placeholder,gallery); insertAfter(description,gallery); } function showPic(whichpic) { //点击切换图片 if(!document.getElementById("placeholder")) return false; var source = whichpic.getAttribute("href"); var placeholder = document.getElementById("placeholder"); placeholder.setAttribute("src",source); //完全可以用 placeholder.src = source 来代替该条语句 if(document.getElementById("description")) { var text = whichpic.getAttribute("title"); var description = document.getElementById("description"); //alert( description.nodeValue); //alert(description.firstChild.nodeValue); //等价于alert( description.childNodes[0].nodeValue); description.firstChild.nodeValue=text; } return true; } addLoadEvent(preparePlaceholder); addLoadEvent(prepareGallery);
效果预览:
转载于:https://blog.51cto.com/xuyran/1783589