首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 .NET Java 游戏 视频 人才 外包 培训 数据库 书店 程序员
中国软件网
欢迎您:游客 | 登录 注册 帮助
  • js点击改变class的值 [已结帖,结帖人:baofen14787]
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • baofen14787
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    • 结帖率:
    发表于:2008-11-12 22:49:44 楼主
    <ul>
                    <li class="nav_title" onclick="">文章管理1 </li>
                    <li> <a href="#">添加文章 </a> </li>
                    <li> <a href="#">添加文章 </a> </li>
                    <li class="nav_title">产品管理 </li>
                    <li> <a href="#">添加文章 </a> </li>
                    <li> <a href="#">添加文章 </a> </li>
                    <li class="nav_title">产品管理 </li>
                    <li> <a href="#">添加文章 </a> </li>
                    <li> <a href="#">添加文章 </a> </li>
                    </ul>js如何单击一下,改变class的值,如我单击一下文章管理1,
    将class="nav_title' 改为class="nav_title_onclick"  再单击一下,又变成class="nav_title"了。

    这个简单的效果如何实现. 请写在一个函数里,然后在onclick里调用!
    20  修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • wtcsy
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-11-12 22:59:071楼 得分:2
    HTML code
    <style type="text/css"> <!-- .nav_title{ background-color:#FFFF00} .nav_title_onclick{ background-color:#00FF00} --> </style><ul> <li class="nav_title" onclick="g(this)">文章管理1 </li> <li> <a href="#">添加文章 </a> </li> <li> <a href="#">添加文章 </a> </li> <li class="nav_title">产品管理 </li> <li> <a href="#">添加文章 </a> </li> <li> <a href="#">添加文章 </a> </li> <li class="nav_title">产品管理 </li> <li> <a href="#">添加文章 </a> </li> <li> <a href="#">添加文章 </a> </li> </ul> <script> function g(e){ e.className=(e.className=="nav_title"?"nav_title_onclick":"nav_title") } </script>

    这样?
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • carrien
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-11-13 09:57:272楼 得分:2
    不错不错~~~
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • zowell
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-11-13 10:04:123楼 得分:2
    ie下的class和ff下的不一样
    ie可以直接
    JScript code
    obj.className=(obj.className=="nav_title"?"nav_title_onclick":"nav_title");

    ff是class属性
    JScript code
    obj.setAttribute("class",(obj.getAttribute("class")=="nav_title"?"nav_title_onclick":"nav_title"));
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • baofen14787
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-11-13 14:49:354楼 得分:0
    测试了下,怎么加上 <script type="application/javascript" language="javascript">就不行呢?
    用 <script>就行?
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • luojihaidao
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-11-13 14:51:025楼 得分:2
    接分。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • baofen14787
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-11-13 14:54:206楼 得分:0
    怎样才能兼容ie和ff
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • zowell
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-11-13 16:00:557楼 得分:2
    对ff和ie分别判断
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • auex010
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-11-13 21:48:258楼 得分:2
    先判断浏览器的说
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • bingdian37
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-11-13 22:06:589楼 得分:2
    if(document.all)
    {
    //IE下的代码
    }
    else
    {
    //Firefox等的代码
    }
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • wtcsy
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-11-13 23:13:2910楼 得分:2
    貌似上面的说法有些不对
    用setAttribute时 ff下用写成class 如下代码  直接写className  或者 class 就会有一个浏览器显示不出来
    HTML code
    <style type="text/css"> .xx{ width:200px; height:200px; background-color:#FFFF99} </style> <body> </body> <script> var div = document.createElement("div"); if(document.all) {div.setAttribute("className", "xx")}//for IE else {div.setAttribute("class", "xx");} //for firefox document.body.appendChild(div) </script>


    但是直接用div.className的时候  2个浏览器都是可以显示的
    HTML code
    <style type="text/css"> .xx{ width:200px; height:200px; background-color:#FFFF99} </style> <body> </body> <script> var div = document.createElement("div"); div.className="xx" //这个地方用div.class="xx" 在ff下是不会显示出样式的 document.body.appendChild(div) </script>

    测试版本 ie 6  ff 2.0
    不信  可以试试
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • chinmo
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    • 3

      7

      3

    发表于:2008-11-13 23:49:5411楼 得分:2
    呵呵,楼上的

    你到底说的是可以,还是不可以哦?

    改变class不用setAttribute
    直接用 obj.className
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • wtcsy
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-11-13 23:55:2512楼 得分:2
    我是想说直接写
    用 obj.className ="xx"    兼容ie ff

    setAttribute
    就要区分  class  和className了
    恩 就是这个意思  ^_^
     
    修改 删除 举报 引用 回复

    网站简介广告服务网站地图帮助联系方式诚聘英才English 问题报告
    北京创新乐知广告有限公司 版权所有 京 ICP 证 070598 号
    世纪乐知(北京)网络技术有限公司 提供技术支持
    Copyright © 2000-2008, CSDN.NET, All Rights Reserved