`
lovelium
  • 浏览: 18880 次
  • 性别: Icon_minigender_1
  • 来自: 广州
最近访客 更多访客>>
社区版块
存档分类
最新评论

一段折叠代码,带记忆功能的

阅读更多
<script language="JavaScript">
function Show(id){
        var obj
=document.getElementById('c_'+id);
        if(obj.style.display=="none"){
                obj.style.display
="";
                
//将子菜单Id放入Cookies
                var curShow 
= readCookie('curShow');
                if(curShow!='')
                {
                    var arr_curShow 
= curShow.split(',');
                    var found = false;
                    
for(i=0;i<arr_curShow.length-1;i++)
                    {
                        
if(arr_curShow[i].toString()==id) {found=true;}
                    }
                    
if(!found){writeCookie('curShow',curShow+','+id,12)}
                }
                
else {
                    writeCookie(
'curShow',id,12)
                }
                
//将子菜单Id放入Cookies End
        }
else{
                obj.style.display
="none";
                
//将子菜单Id从Cookies中移除
                var curShow 
= readCookie('curShow');
                if(curShow!='')
                {
                    var arr_curShow 
= curShow.split(',');
                    for(i=0;i<arr_curShow.length;i++)
                    {
                        
if(arr_curShow[i].toString()==id) {arr_curShow=arr_curShow.del(i--);}
                    }
                    curShow 
= arr_curShow.join(',');
                    //alert(curShow);
                    writeCookie(
'curShow',curShow,12)
                }
                
//将子菜单Id从Cookies中移除 End
        }

}

function readCookie(name)

{

  var cookieValue 
= "";

  var search 
= name + "=";

  
if(document.cookie.length > 0)

  { 

    offset 
= document.cookie.indexOf(search);

    
if (offset != -1)

    { 

      offset 
+= search.length;

      
end = document.cookie.indexOf(";", offset);

      
if (end == -1end = document.cookie.length;

      cookieValue 
= unescape(document.cookie.substring(offset, end))

    }

  }

  return cookieValue;

}

function writeCookie(name, value, hours)

{

  var expire 
= "";

  
if(hours != null)

  {

    expire 
= new Date((new Date()).getTime() + hours * 3600000);

    expire 
= "; expires=" + expire.toGMTString();

  }

  document.cookie 
= name + "=" + escape(value) + expire;

}
Array.prototype.del=function(n) {  //n表示第几项,从0开始算起。
//prototype为对象原型,注意这里为对象增加自定义方法的方法。
  
if(n<0)  //如果n<0,则不进行任何操作。
    return this;
  
else
    return this.slice(
0,n).concat(this.slice(n+1,this.length));
}


window.onload 
= function a()
{
    var curShow 
= readCookie('curShow');
    var totalShow = 2;    //自己修改一共有多少个二级分类
    
if(curShow!=''&&curShow!=null)
    {
        
for(i=1;i<=totalShow;i++)
        {
            document.getElementById(
'c_'+i).display="none";
        }
        var arr_curShow;
        arr_curShow 
= curShow.split(',');
        for(i=0;i<=arr_curShow.length-1;i++)
        {
            
if(arr_curShow[i]!=''){document.getElementById('c_'+arr_curShow[i]).style.display="";}
        }

    }
}
</script>


<TABLE cellSpacing=0 cellPadding=0 width='100%' border=0>
<TBODY><TR><TD class=catemenu>&nbsp;<A style='CURSOR: pointer' onclick=Show(1)>※ 栏目1</A></TD></TR>
<TBODY id=c_1 style='DISPLAY: none'><TR><TD class=bar2 height=20>&nbsp;┖ <a href=#>下级栏目</a></TD></TR></TBODY>
<TBODY><TR><TD class=catemenu>&nbsp;<A style='CURSOR: pointer' onclick=Show(2)>※ 栏目2</A></TD></TR>
<TBODY id=c_2 style='DISPLAY: none'><TR><TD class=bar2 height=20>&nbsp;┖ <a href='#'>下级栏目</a></TD></TR></TBODY><TBODY></TABLE>
 
做为一个共享主义者,好的东西当然要共享了!这里就共享一个带记忆的折叠菜单吧!
分享到:
评论

相关推荐

    vs2012js折叠插件

    在编程中,代码折叠允许程序员隐藏或显示代码段,特别是那些复杂的函数、循环或条件语句。这有助于减少屏幕上的视觉混乱,使核心逻辑更加突出。在VS2012中,虽然内建了一些基本的折叠功能,但此插件提供了更为强大和...

    超实用的JavaScript代码段(代码逆袭)1

    此外,表单提交、密码强度检查、光标定位、记忆功能禁止等功能也是常见的表单处理技巧。 图片控制方面,JavaScript可以实现动画管理、图片预览、样式变换,如鼠标悬停效果、放大镜效果、倒影效果等。图片轮播功能,...

    csr软件,用于编写代码,代码编辑器

    同时,代码折叠功能使得复杂的代码段可以被隐藏,让开发者能够专注于当前的工作区域,保持代码的清晰性。 2. **智能代码补全**:CSR软件具备强大的智能代码补全功能,它可以预测并提供可能的代码片段,大大减少了...

    Div 折叠

    在这段代码中,`toggleDiv`函数会检查`id`为`myDiv`的`div`是否隐藏,然后改变其显示状态。`toggleButton`是触发折叠的按钮,当点击时,会调用`toggleDiv`函数。 3. 源码分析: 博文链接中提到的链接...

    大众MQB平台迈腾****刷隐藏功能

    30. 自动落锁:车辆行驶一段时间后自动落锁,提高行车安全。 31. 关门自动锁车:车辆门关闭后,系统自动锁车,防止误触。 32. 关闭安全带警告:取消未系安全带的警告声音,适用于已知安全习惯的驾驶员。 33. 调整...

    FlashDevelop 快捷键

    - 场景:编写完一段复杂代码后,使用该快捷键整理格式,有助于提高代码可读性。 10. **查找(Ctrl+Shift+F)** - 功能:全局搜索文本。 - 场景:在大型项目中寻找特定字符串时非常有用。 11. **替换(Ctrl+...

    EditPlus3编辑器

    对于长且复杂的代码段,EditPlus3允许用户折叠代码块,隐藏不重要的部分,使代码结构清晰,便于理解和维护。 4. **宏功能** 宏是EditPlus3的一大亮点,它允许用户录制一系列操作并保存为宏命令,之后只需一键即可...

    SCITE FOR JAVA(已经配置好颜色)

    在编写代码过程中,有时我们需要调整代码结构,将一段代码从一处移到另一处。这个功能允许开发者无需复制粘贴,直接选择段落并将其上移或下移,提高了代码重构的便捷性。 "lua"标签表明SCITE也支持Lua语言的编写,...

    EPIC0.6.13

    4. 代码折叠:为了方便管理和阅读大型代码文件,EPIC支持代码折叠功能,可以隐藏不必要的部分,集中关注关键代码块。 5. 重构支持:EPIC可能提供了一些基本的重构工具,如重命名变量、提取函数等,帮助开发者改进...

    editplus3.5

    此外,它还具备自动完成、代码折叠等增强功能,大大加快了编码速度。 2. **智能提示功能**: 编程过程中,代码提示是必不可少的辅助工具。EditPlus3.5提供了强大的代码提示功能,对于所支持的编程语言,可以在输入...

    WndTabs.rar_WndTabs

    代码折叠功能使得开发者可以快速隐藏和显示代码段,帮助组织和浏览大型代码文件。MDI管理则允许用户同时打开多个工程或文件,便于对比和协同工作。自定义快捷键则可以根据个人习惯调整,提升操作速度。 安装WndTabs...

    EditPlus.rar

    对于大型代码文件,EditPlus的代码折叠功能可以帮助你隐藏和展开部分代码段,使代码结构更易于理解和管理。 10. **编译与调试**: 支持外部程序的运行和编译,例如可以配置编译器路径和参数,直接在编辑器内进行...

    文本编辑器Notepad++

    同时,Notepad++还支持代码折叠,帮助用户隐藏或显示代码段,使复杂代码结构更易于理解和管理。 5. **查找与替换**: 强大的查找与替换功能是Notepad++的一大亮点。支持正则表达式,可以进行复杂的文本查找和替换...

    EditPlus3编译器

    3. **代码折叠**:在处理大型代码文件时,EditPlus3的代码折叠功能允许用户隐藏部分代码段,使代码结构更易于理解和管理。 4. **多文档界面**:用户可以在同一时间内打开并编辑多个文件,通过标签页切换,便于在...

    EditPlus2汉化版

    对于复杂的大文件,EditPlus2的代码折叠功能可以让用户隐藏部分代码段,专注于当前正在工作的部分,保持工作区的整洁。 9. **编译与调试** 支持各种语言的编译和调试命令,例如直接运行Java程序,或者通过GDB进行...

    方便快捷Vc小插件

    4. **代码折叠**:对于长代码段,插件提供了代码折叠功能,允许开发者隐藏不需立即关注的部分,专注于当前正在处理的代码块,使代码管理更为简洁。 5. **其他辅助功能**:此外,这款插件可能还包括代码格式化、查找...

    jquery-bbedit-1.1.zip_bbedit jquery_jquery-bbedit

    例如,插件的代码折叠功能可以用来隐藏不相关的部分,让复杂代码结构变得清晰;而其查找替换功能则能快速定位和修改大量相似的代码。 总结来说,jQuery BBEdit插件是提升jQuery开发效率的一大利器,它通过集成的...

    Vs2005 智能生成HTML源码

    2. **代码高亮和折叠**:编辑器还支持代码高亮,使得HTML代码更易读,同时允许用户折叠某些代码段,以便在大型文档中更容易导航。这对于管理和理解复杂的HTML结构尤其有用。 3. **设计视图与源代码视图**:VS2005...

    VC6 ASSIST

    VC6 ASSIST的主要功能包括自动完成、语法高亮、错误检查、代码折叠等,这些功能在现代的IDE中可能已经司空见惯,但在VC6的时代,它们极大地提高了程序员的工作效率。下面将详细解析这些功能: 1. **自动完成**:VC6...

    EmEditor文本编辑

    1. **代码折叠**:对于代码密集的文本,EmEditor提供代码折叠功能,方便用户隐藏或显示部分代码段,使编辑区域更加清晰。 2. **查找替换**:除了基础的文本查找替换,还支持正则表达式搜索,能快速定位和替换特定...

Global site tag (gtag.js) - Google Analytics