我又来问弱智小问题了! Js的弱智小问题

weixin_40980353 2018-04-15 06:56:47
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>图片库</title>
<style>
#placeholder{
height: 500px;;
width: 500px;
border: 1px solid black;
}
</style>
</head>
<body>
<h1 title="This is title">Snapshots</h1>
<ul id="images">
<li>
<a href="案例研究/1.JPG" title="A fireworks display">Fireworks</a>
</li>
<li>
<a href="案例研究/2.JPG" title="B fireworks display">Coffee</a>
</li>
<li>
<a href="案例研究/3.JPG" title="C fireworks display">Rose</a>
</li>
<li>
<a href="案例研究/5.JPG" title="D fireworks display">Big Ben</a>
</li>
</ul>
<img id="placeholder" src="案例研究/155537pb4aaxk4abawq555.jpg" alt="My image Gallery">
<P id="description">This is my picture.</P>
<script src="scripts/showPic.js" type="text/javascript"></script>
</body>
</html>

js:
addLoadEvent(prepareGallery);


function prepareGallery() {
if(!document.getElementsByTagName||document.getElementById)return false;
if(!document.getElementById("images"))return false;
var gallery=document.getElementById("images");
var links=gallery.getElementsByTagName("a");
for(var i=0;i<links.length;i++){
links[i].onclick=function () {
return showPic(this)?false:true;
}
}
}
function showPic(whichpic) {
if (!document.getElementById("placeholder"))return false;
var source= whichpic.getAttribute("href");
var placeholder=document.getElementById("placeholder");
if (placeholder.nodeName !="IMG") return false;
placeholder.setAttribute("src",source);//替换图片
if(document.getElementById("description")) {
var text=whichpic.getAttribute("title")?whichpic.getAttribute("title"):"";
var description = document.getElementById("description");
if (description.firstChild.nodeType==3){
description.firstChild.nodeValue=text;
}
}
return true;
}
function addLoadEvent(func){
var oldonload=window.onload;
if(typeof window.onload!='function'){
window.onload=func;
}else{
window.onload=function () {
oldonload();
func;}
}
}//这个函数用于在页面加载之后执行的函数的函数,参数为要执行的函数

为什么我的html和js执行起来 点击链接会跳转啊,我也没办法判断我的JS 替换文字和图片是否执行
大神帮帮我啊 !
...全文
834 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
天际的海浪 2018-04-16
  • 打赏
  • 举报
回复
! 逻辑非的优先级高于 || 逻辑或,要加()的 if(!(document.getElementsByTagName||document.getElementById))return false; 其实这个判断没用。因为所有的浏览器都支持这两个方法。
weixin_40980353 2018-04-15
  • 打赏
  • 举报
回复
引用 1 楼 jslang 的回复:
function addLoadEvent(func){ var oldonload=window.onload; if(typeof window.onload!='function'){ window.onload=func; }else{ window.onload=function () { oldonload(); func();//函数调用要加()啊 } }
我加上了还是不对啊 呜呜呜
天际的海浪 2018-04-15
  • 打赏
  • 举报
回复
function addLoadEvent(func){ var oldonload=window.onload; if(typeof window.onload!='function'){ window.onload=func; }else{ window.onload=function () { oldonload(); func();//函数调用要加()啊 } }

87,915

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧