<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 == -1) end = 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> <A style='CURSOR: pointer' onclick=Show(1)>※ 栏目1</A></TD></TR>
<TBODY id=c_1 style='DISPLAY: none'><TR><TD class=bar2 height=20> ┖ <a href=#>下级栏目</a></TD></TR></TBODY>
<TBODY><TR><TD class=catemenu> <A style='CURSOR: pointer' onclick=Show(2)>※ 栏目2</A></TD></TR>
<TBODY id=c_2 style='DISPLAY: none'><TR><TD class=bar2 height=20> ┖ <a href='#'>下级栏目</a></TD></TR></TBODY><TBODY></TABLE>
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 == -1) end = 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> <A style='CURSOR: pointer' onclick=Show(1)>※ 栏目1</A></TD></TR>
<TBODY id=c_1 style='DISPLAY: none'><TR><TD class=bar2 height=20> ┖ <a href=#>下级栏目</a></TD></TR></TBODY>
<TBODY><TR><TD class=catemenu> <A style='CURSOR: pointer' onclick=Show(2)>※ 栏目2</A></TD></TR>
<TBODY id=c_2 style='DISPLAY: none'><TR><TD class=bar2 height=20> ┖ <a href='#'>下级栏目</a></TD></TR></TBODY><TBODY></TABLE>
做为一个共享主义者,好的东西当然要共享了!这里就共享一个带记忆的折叠菜单吧!
发表评论
-
Oseicq是最好的可2次开发的即时通讯软件Oseicq即时通讯源码 .
2012-02-02 12:48 723Oseicq是最好的可2次开发的即时通讯软件,专 ... -
正则表达式在UBB论坛中的应用
2007-03-07 09:01 886一、读者指引 读者指引帮助你掌握本文的梗概。以免你看了大 ... -
!important和(空格)/**/:的组合技巧及其他
2007-03-07 09:06 716先温习一下对于IE的box-model的破解 IE box-m ... -
JS的IE和Firefox兼容性汇编
2007-03-07 09:08 570JS的IE和Firefox兼容性汇编(原作:hotman_x) ... -
javascript如何对中文字符进行url编码
2007-03-07 09:11 1184今天来点轻松得,这几天因做一个项目用到了对URL的编解码,就总 ... -
把应用程序从 Internet Explorer 迁移到 Mozilla
2007-03-07 09:49 1377级别: 初级 Doron Rosenberg (doronr@ ... -
用 CSS 实现的阴影效果
2007-03-08 10:08 1214阴影效果成了平面设计的一个套路,平面设计师把它当作瑞士军刀的起 ... -
JavaScript中的私有成员
2007-03-10 08:16 778本文地址:http://www.nir ... -
共享一个ASP无组件折线图源码!强
2007-06-07 11:42 1010我又来了,这几天我无意发现了一个地方有这个源码。当时下下来就没 ... -
网页设计中文标题h1~h4应用技巧
2007-07-10 17:00 1802体验css提示您本教程适合初学者应用,高手还望见笑。欢迎来信[ ...
相关推荐
在编程中,代码折叠允许程序员隐藏或显示代码段,特别是那些复杂的函数、循环或条件语句。这有助于减少屏幕上的视觉混乱,使核心逻辑更加突出。在VS2012中,虽然内建了一些基本的折叠功能,但此插件提供了更为强大和...
此外,表单提交、密码强度检查、光标定位、记忆功能禁止等功能也是常见的表单处理技巧。 图片控制方面,JavaScript可以实现动画管理、图片预览、样式变换,如鼠标悬停效果、放大镜效果、倒影效果等。图片轮播功能,...
同时,代码折叠功能使得复杂的代码段可以被隐藏,让开发者能够专注于当前的工作区域,保持代码的清晰性。 2. **智能代码补全**:CSR软件具备强大的智能代码补全功能,它可以预测并提供可能的代码片段,大大减少了...
在这段代码中,`toggleDiv`函数会检查`id`为`myDiv`的`div`是否隐藏,然后改变其显示状态。`toggleButton`是触发折叠的按钮,当点击时,会调用`toggleDiv`函数。 3. 源码分析: 博文链接中提到的链接...
30. 自动落锁:车辆行驶一段时间后自动落锁,提高行车安全。 31. 关门自动锁车:车辆门关闭后,系统自动锁车,防止误触。 32. 关闭安全带警告:取消未系安全带的警告声音,适用于已知安全习惯的驾驶员。 33. 调整...
- 场景:编写完一段复杂代码后,使用该快捷键整理格式,有助于提高代码可读性。 10. **查找(Ctrl+Shift+F)** - 功能:全局搜索文本。 - 场景:在大型项目中寻找特定字符串时非常有用。 11. **替换(Ctrl+...
对于长且复杂的代码段,EditPlus3允许用户折叠代码块,隐藏不重要的部分,使代码结构清晰,便于理解和维护。 4. **宏功能** 宏是EditPlus3的一大亮点,它允许用户录制一系列操作并保存为宏命令,之后只需一键即可...
在编写代码过程中,有时我们需要调整代码结构,将一段代码从一处移到另一处。这个功能允许开发者无需复制粘贴,直接选择段落并将其上移或下移,提高了代码重构的便捷性。 "lua"标签表明SCITE也支持Lua语言的编写,...
4. 代码折叠:为了方便管理和阅读大型代码文件,EPIC支持代码折叠功能,可以隐藏不必要的部分,集中关注关键代码块。 5. 重构支持:EPIC可能提供了一些基本的重构工具,如重命名变量、提取函数等,帮助开发者改进...
此外,它还具备自动完成、代码折叠等增强功能,大大加快了编码速度。 2. **智能提示功能**: 编程过程中,代码提示是必不可少的辅助工具。EditPlus3.5提供了强大的代码提示功能,对于所支持的编程语言,可以在输入...
代码折叠功能使得开发者可以快速隐藏和显示代码段,帮助组织和浏览大型代码文件。MDI管理则允许用户同时打开多个工程或文件,便于对比和协同工作。自定义快捷键则可以根据个人习惯调整,提升操作速度。 安装WndTabs...
对于大型代码文件,EditPlus的代码折叠功能可以帮助你隐藏和展开部分代码段,使代码结构更易于理解和管理。 10. **编译与调试**: 支持外部程序的运行和编译,例如可以配置编译器路径和参数,直接在编辑器内进行...
同时,Notepad++还支持代码折叠,帮助用户隐藏或显示代码段,使复杂代码结构更易于理解和管理。 5. **查找与替换**: 强大的查找与替换功能是Notepad++的一大亮点。支持正则表达式,可以进行复杂的文本查找和替换...
3. **代码折叠**:在处理大型代码文件时,EditPlus3的代码折叠功能允许用户隐藏部分代码段,使代码结构更易于理解和管理。 4. **多文档界面**:用户可以在同一时间内打开并编辑多个文件,通过标签页切换,便于在...
对于复杂的大文件,EditPlus2的代码折叠功能可以让用户隐藏部分代码段,专注于当前正在工作的部分,保持工作区的整洁。 9. **编译与调试** 支持各种语言的编译和调试命令,例如直接运行Java程序,或者通过GDB进行...
4. **代码折叠**:对于长代码段,插件提供了代码折叠功能,允许开发者隐藏不需立即关注的部分,专注于当前正在处理的代码块,使代码管理更为简洁。 5. **其他辅助功能**:此外,这款插件可能还包括代码格式化、查找...
例如,插件的代码折叠功能可以用来隐藏不相关的部分,让复杂代码结构变得清晰;而其查找替换功能则能快速定位和修改大量相似的代码。 总结来说,jQuery BBEdit插件是提升jQuery开发效率的一大利器,它通过集成的...
2. **代码高亮和折叠**:编辑器还支持代码高亮,使得HTML代码更易读,同时允许用户折叠某些代码段,以便在大型文档中更容易导航。这对于管理和理解复杂的HTML结构尤其有用。 3. **设计视图与源代码视图**:VS2005...
VC6 ASSIST的主要功能包括自动完成、语法高亮、错误检查、代码折叠等,这些功能在现代的IDE中可能已经司空见惯,但在VC6的时代,它们极大地提高了程序员的工作效率。下面将详细解析这些功能: 1. **自动完成**:VC6...
1. **代码折叠**:对于代码密集的文本,EmEditor提供代码折叠功能,方便用户隐藏或显示部分代码段,使编辑区域更加清晰。 2. **查找替换**:除了基础的文本查找替换,还支持正则表达式搜索,能快速定位和替换特定...