惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

阮一峰的网络日志
阮一峰的网络日志
博客园 - 司徒正美
D
DataBreaches.Net
宝玉的分享
宝玉的分享
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
博客园 - 【当耐特】
人人都是产品经理
人人都是产品经理
博客园 - Franky
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
IT之家
IT之家
博客园 - 三生石上(FineUI控件)
J
Java Code Geeks
腾讯CDC
博客园_首页
The Cloudflare Blog
S
SegmentFault 最新的问题
C
Check Point Blog
美团技术团队
爱范儿
爱范儿
大猫的无限游戏
大猫的无限游戏
Hugging Face - Blog
Hugging Face - Blog
T
The Blog of Author Tim Ferriss
A
About on SuperTechFans
Blog — PlanetScale
Blog — PlanetScale

博客园 - andyran

xp下多站点及asp.net mvc3配置 获取Controller.ModelState中的所有错误信息 CSS line-height:XX在IE7下面与IE6、IE8、FireFox高度不一样 HRESULT:0x80070057 (E_INVALIDARG)的异常的解决方案 css中div高度自适应的方法(兼容FF IE) Win7安装SQL2005的IIS7设置 CSS兼容与标准,HACK技巧 - andyran - 博客园 .NET打包安装MSDE以及安装和卸载 为FCKEDITOR添加导入Word文档功能 PEAR之DB_DataObject快速安装 c#实现随鼠标移动窗体 SVN使用技巧 - 不要把不必要的文件版本化 svn架设快速入门(转) utf8的bom问题 Flex中的拖放(Drag-Drop)事件入门 续:使用FLEX为上传的图片添加水印 使用FLEX实现简单WEB在线拍照功能 使用jQuery编写一个UBB编辑器 编写jQuery插件来扩展checkbox
通过jquery选择li菜单实现无刷新css效果 - andyran - 博客园
andyran · 2010-12-11 · via 博客园 - andyran

需求:

一个页面, 左边为菜单栏, 右边为一个iframe,通过点击左边的菜单,iframe载入对应的页面.同时对选中的菜单添加css选择效果

代码

    <div id="leftmenu" class="menu">
        
<ul style="overflow: visible;" id="menu_index">
         
<li><target="main" hidefocus="true" href="main.html" class="selected">管理中心首页</a></li>
         
<li><target="main" hidefocus="true" href="list.html" class="">列表显示</a></li>
         
<li><target="main" hidefocus="true" href="" class="">商品管理</a></li>
         
<li><target="main" hidefocus="true" href="" class="">公告管理</a></li>
        
</ul>
       
<ul style="display:none" id="menu_global">
         
<li><target="main" hidefocus="true" href="form1.html">表单控件1</a></li>
         
<li><target="main" hidefocus="true" href="form1.html">表单控件2</a></li>
      
</ul>
    
</div>

选中管理中心首页后对a标价添加名为selected的css, 选中其他项则为该项添加该css, 同时移除其他菜单的selected css, 本来可以通过对li或者a添加id来实现, 然后对a添加click事件很简单就可以实现, 但是如果是菜单不固定, 或者菜单太多相对来说就会比较麻烦.但是要是硬是这样实现, 由于很久没接触jquery了, 所以可能是我跟不上时代了,呵呵,搞了半天, 以下为实现代码, 在载入时绑定.

    $(function(){
        $(
'#leftmenu a').click(function(){
            $(
'#leftmenu a').each(function() {
                $(
this).removeClass('tabon');
            });
            $(
this).addClass('tabon');
        });
    })

我纠结在了第一句, 每次都想each, 结果把我each进去了, 然后发现可以直接对$('#leftmenu a') click(囧), 遍历删除目前的css, 然后对click项添加css就OK了. 嗨, 郁闷.