<html>
<head>
<style>
.reveal*{display:none;}
.reveal*.handle{display:block;}
</style>
<script>
window.onload=function(){
var elements = document.getElementsByClassName("reveal");
for(var i=0;i<elements.length:i++){
var elt=elements[i];
var title=elt.getElementsByClassName("handle")[0];
addRevealHandler(title.elt);}
function addRevealHandler(title,elt)
{
title.onclick =function(){
if(elt.className=="reveal")
elt.className="revealed";
else if(elt.className=="revealed")
elt.className="reveal";
}
}
};
</script>
</head>
<body>
<div class="reveal">
<h1 class="handle">Click here to Reveal Hidden Text</h1>
<p>This paragraph is hidden.It appears when you click on the title.</p>
</div>
</body>
</html>
求高手告诉怎么没有onlick的效果。。。
8 个解决方案
#1
先看看浏览器调试工具里有没有报错,然后检查一遍代码,也许会发现点什么(比如elements.length后面应该是分号而不是冒号)。另外,代码还是写的规范些好~~
#2
书上的例子,想说看看效果,完全是照搬下来的。然后就没看到结果。。
#3
不知是图上讲的不对,还是你打的不对。你上面的代码错误处不少呀
<!DOCTYPE html>
<html>
<head>
<style>
.reveal *{display:none;}
.reveal *.handle{display:block;}
</style>
<script>
window.onload=function(){
var elements = document.getElementsByClassName("reveal");
for(var i=0;i<elements.length;i++){
var elt=elements[i];
var title=elt.getElementsByClassName("handle")[0];
addRevealHandler(title,elt);
}
};
function addRevealHandler(title,elt){
title.onclick=function(){
if(elt.className=="reveal"){
elt.className="revealed";
}else if(elt.className=="revealed"){
elt.className="reveal";
}
};
}
</script>
</head>
<body>
<div class="reveal">
<h1 class="handle">Click here to Reveal Hidden Text</h1>
<p>This paragraph is hidden.It appears when you click on the title.</p>
</div>
<div class="reveal">
<h1 class="handle">Click here to Reveal Hidden Text</h1>
<p>This paragraph is hidden.It appears when you click on the title.</p>
</div>
<div class="reveal">
<h1 class="handle">Click here to Reveal Hidden Text</h1>
<p>This paragraph is hidden.It appears when you click on the title.</p>
</div>
<div class="reveal">
<h1 class="handle">Click here to Reveal Hidden Text</h1>
<p>This paragraph is hidden.It appears when you click on the title.</p>
</div>
<div class="reveal">
<h1 class="handle">Click here to Reveal Hidden Text</h1>
<p>This paragraph is hidden.It appears when you click on the title.</p>
</div>
</body>
</html>
#4
用工具调过,除了标点错,别的没提示额。。
#5
#6
有 这个方法?getElementsByClassName
#7
有,document,element对象都有这个方法
#8
随你怎么说吧。反正是你的错误,
#1
先看看浏览器调试工具里有没有报错,然后检查一遍代码,也许会发现点什么(比如elements.length后面应该是分号而不是冒号)。另外,代码还是写的规范些好~~
#2
书上的例子,想说看看效果,完全是照搬下来的。然后就没看到结果。。
#3
不知是图上讲的不对,还是你打的不对。你上面的代码错误处不少呀
<!DOCTYPE html>
<html>
<head>
<style>
.reveal *{display:none;}
.reveal *.handle{display:block;}
</style>
<script>
window.onload=function(){
var elements = document.getElementsByClassName("reveal");
for(var i=0;i<elements.length;i++){
var elt=elements[i];
var title=elt.getElementsByClassName("handle")[0];
addRevealHandler(title,elt);
}
};
function addRevealHandler(title,elt){
title.onclick=function(){
if(elt.className=="reveal"){
elt.className="revealed";
}else if(elt.className=="revealed"){
elt.className="reveal";
}
};
}
</script>
</head>
<body>
<div class="reveal">
<h1 class="handle">Click here to Reveal Hidden Text</h1>
<p>This paragraph is hidden.It appears when you click on the title.</p>
</div>
<div class="reveal">
<h1 class="handle">Click here to Reveal Hidden Text</h1>
<p>This paragraph is hidden.It appears when you click on the title.</p>
</div>
<div class="reveal">
<h1 class="handle">Click here to Reveal Hidden Text</h1>
<p>This paragraph is hidden.It appears when you click on the title.</p>
</div>
<div class="reveal">
<h1 class="handle">Click here to Reveal Hidden Text</h1>
<p>This paragraph is hidden.It appears when you click on the title.</p>
</div>
<div class="reveal">
<h1 class="handle">Click here to Reveal Hidden Text</h1>
<p>This paragraph is hidden.It appears when you click on the title.</p>
</div>
</body>
</html>
#4
用工具调过,除了标点错,别的没提示额。。
#5
#6
有 这个方法?getElementsByClassName
#7
有,document,element对象都有这个方法
#8
随你怎么说吧。反正是你的错误,