js修改className不行,当我点击的时候会改变,点击完之后又回到原来的状态,还是没有修改!请高手指点谢谢
<script>functionchangestyle(obj){//obj.className='current';document.getElementById('s...
<script>
function changestyle(obj){
//obj.className='current';
document.getElementById('ss').className="";
obj.className="current"
}
<li class="" onclick="changestyle(this)"><a href="#">个人主页1</a></li>
<li class="" onclick="changestyle(this)"><a href="#">个人主页2</a></li>
<li class="" onclick="changestyle(this)"><a href="#">个人主页3</a></li> 展开
function changestyle(obj){
//obj.className='current';
document.getElementById('ss').className="";
obj.className="current"
}
<li class="" onclick="changestyle(this)"><a href="#">个人主页1</a></li>
<li class="" onclick="changestyle(this)"><a href="#">个人主页2</a></li>
<li class="" onclick="changestyle(this)"><a href="#">个人主页3</a></li> 展开
5个回答
展开全部
同意一楼观点,你先把document.getElementById('ss').className="";注解掉试一下。
或者是在body中添加一个id为ss的div试试。
下面是我做的一个尝试。
<!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>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<style type="text/css">
.current{
background:#0FF;
}
</style>
<script type="text/javascript" >
function changestyle(obj){
//obj.className='current';
document.getElementById('ss').className="";
obj.className="current";
}
</script>
</head>
<body>
<li class="" onclick="changestyle(this)"><a href="#" >个人主页1</a></li>
<li class="" onclick="changestyle(this)"><a href="#">个人主页2</a></li>
<li class="" onclick="changestyle(this)"><a href="#" class="current">个人主页3</a></li>
<div id="ss"></div>
</body>
</html>
或者是在body中添加一个id为ss的div试试。
下面是我做的一个尝试。
<!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>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<style type="text/css">
.current{
background:#0FF;
}
</style>
<script type="text/javascript" >
function changestyle(obj){
//obj.className='current';
document.getElementById('ss').className="";
obj.className="current";
}
</script>
</head>
<body>
<li class="" onclick="changestyle(this)"><a href="#" >个人主页1</a></li>
<li class="" onclick="changestyle(this)"><a href="#">个人主页2</a></li>
<li class="" onclick="changestyle(this)"><a href="#" class="current">个人主页3</a></li>
<div id="ss"></div>
</body>
</html>
追问
我试过写在a标签里面了,不行,呵呵,那个id=“ss”的在我页面上是有的,我就少写了点代码,把主要的代码写出来了,但是还是不行的,不能实现想要的效果
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
代码和事件都没有问题,是不是哪里还操作了这些表情的样式了。可以先清空浏览器,再测试一下。或者用火狐浏览器测试。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
主要是CSS样式造成的,检查一下A标签的样式。
另你可以试一下把onclick="changestyle(this)“写在A标签里面
另你可以试一下把onclick="changestyle(this)“写在A标签里面
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你把这个onclick写到a标签里试试。
更多追问追答
追问
.main_nav ul { width:964; overflow:hidden; padding:0 0 0 0; }
.main_nav ul li { float:left; margin-left:25px; margin-right:15px; margin-top:5px; }
.main_nav ul li a { display:block; color:#FFF; }
.main_nav .current a { color:#FFE800; font-weight:1000; }
这个就是css样式
追答
我看过了,主要是你那句document.getElementById('ss').className="";的问题。我估计这个ss的id在你的页面中根本不存在。由于js执行到这句出了错,所以就不再往下执行了。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你的那个ID为ss的是在哪呢
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询