我是想点击"首页"就展开"Home" 然后点击"联系"就隐藏"Home"显示 "contact"
但我写的脚本不知道哪里错了
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<script type="text/javascript">
function list(id){
var list = document.getElementById("list");
var item = list.getElementsByTagName("li");
for(var i=0; i<item.length; i++){
if(item[i].className.indexOf("section") == -1) continue;
if(item[i].getAttribute("id") != id){
item[i].style.display = "none";
}
else{
item[i].style.display = "block";
}
}
}
function shows(){
var list = document.getElementById("list");
var lists = list.getElementsByTagName("li");
for(var i=0; i<links.length; i++){
if(lists[i].className.indexOf("section") != -1){
var links = lists[i].getElementsByTagName("a");
for(var j=0; j<links.length; j++){
var sectionID = links[j].lastChind.nodeValue;
if(!document.getElementById(sectionID)) continue;
document.getElementById(sectionID).style.display = "none";
links[j].destination = sectionID;
links[j].onclick = function(){
list(this.destination);
return false;
}
}
}
}
}
window.onload = shows;
</script>
</head><body>
<ul id="list">
<li><a href="#home">首页</a></li>
<li class="section" id="home"><a href="">Home</a></li>
<li><a href="#contact">联系</a></li>
<li class="section" id="contact"><a href="">contact</a></li>
</ul>
</body>
</html>
但我写的脚本不知道哪里错了
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<script type="text/javascript">
function list(id){
var list = document.getElementById("list");
var item = list.getElementsByTagName("li");
for(var i=0; i<item.length; i++){
if(item[i].className.indexOf("section") == -1) continue;
if(item[i].getAttribute("id") != id){
item[i].style.display = "none";
}
else{
item[i].style.display = "block";
}
}
}
function shows(){
var list = document.getElementById("list");
var lists = list.getElementsByTagName("li");
for(var i=0; i<links.length; i++){
if(lists[i].className.indexOf("section") != -1){
var links = lists[i].getElementsByTagName("a");
for(var j=0; j<links.length; j++){
var sectionID = links[j].lastChind.nodeValue;
if(!document.getElementById(sectionID)) continue;
document.getElementById(sectionID).style.display = "none";
links[j].destination = sectionID;
links[j].onclick = function(){
list(this.destination);
return false;
}
}
}
}
}
window.onload = shows;
</script>
</head><body>
<ul id="list">
<li><a href="#home">首页</a></li>
<li class="section" id="home"><a href="">Home</a></li>
<li><a href="#contact">联系</a></li>
<li class="section" id="contact"><a href="">contact</a></li>
</ul>
</body>
</html>
解决方案 »
- JS日历控件内部内部设置的时间已经过期,请问一般在哪调置?请高手指教!
- JS设置鼠标的坐标。超简单速度进
- 这个正则表达式什么意思
- 请教,jquery选择器
- 如何将被十六进制编码的汉字还原为可以正常浏览的汉字?
- 有没有好一点的可以快速入门的js教程,短小一点的,最好每章后面能带个习题的那种
- 如何用javascript在客户端将网页导入(复制粘贴)到Excel中
- 咋样根据下拉框的内容变动文本框的内容?
- 向所有高手请教一个问题,关于 无提示关闭父窗口 的问题!!!
- 想要一个各省市的二级联动
- 问一个非常简单的jQuery的简单问题,
- 谁能告诉我第二次document.getElementById为什么得不到对象了?
<head>
<script src="jquery.js"></script>
<script>
$(function(){
$("#id_home").click(function(){
$("#home").show();
$("#contact").hide();
})
$("#id_contact").click(function(){
$("#home").hide();
$("#contact").show();})})
</script>
</head>
<body>
<ul id="list">
<li id="id_home">首页</li>
<li class="section" id="home"><a href="">Home</a></li>
<li id="id_contact">联系</li>
<li class="section" id="contact"><a href="">contact</a></li>
</ul>
</body>
var list = document.getElementById("list");
lists = list.getElementsByTagName("li"); for(var i=0;i< lists.length-1;i+=2)
{
(function(i){
lists[i].onclick = function()
{ debugger;
for(var j=1;j< lists.length;j+=2){
if(i+1!=j){lists[j].style.display ="none";}else{lists[j].style.display ="block";}
}
};
})(i);
}
}
};})(i)
}
}
<li><a href="#home">首页</a></li>
<li class="section" id="home"><a href="">Home</a></li>
<li><a href="#contact">联系</a></li>
<li class="section" id="contact"><a href="">contact</a></li>
<li><a href="#home">首页1</a></li>
<li class="section" id="Li1"><a href="">Home1</a></li>
<li><a href="#contact">联系2</a></li>
<li class="section" id="Li2"><a href="">contact2</a></li>
</ul>window.onload=function(){
var list = document.getElementById("list");
lists = list.getElementsByTagName("li"); for(var i=0;i< lists.length-1;i+=2)
{
(function(i){
lists[i].onclick = function()
{ debugger;
for(var j=1;j< lists.length;j+=2){
if(i+1!=j){lists[j].style.display ="none";}else{lists[j].style.display ="block";}
}
};
})(i);
}
}
1、show()方法里第一个for循环里的links应该是lists吧,下面的几个记得也改下
2、第二个for循环里第一行lastChild你写错了每个人思路不一样,我也不说什么,仔细看看,想通了就快了