关于用cookies保存菜单CSS状态求助! 本帖最后由 even0220 于 2012-12-02 16:25:00 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 li li a:hover{ color:red; } li a:hover{ color:green;}li a:active{ color:yellow;}li li a:active{ color:blue;}是要这样的效果吗?这个试试用伪类解决用cookie就有些麻烦了。而且伪类也可以多个叠加li li a:visted:hover{}这样就表示被访问过的,再出现鼠标悬浮时的效果,该一下相应的内容试试能不能达到你要求的效果。 因为一级,二级菜单被单击还有jquery的一些特效,所以我想的还是只能用cookies。样式的变化已经没问题,就是不能保存状态。 function getCookie(c_name){if (document.cookie.length>0) { c_start=document.cookie.indexOf(c_name + "=") if (c_start!=-1) { c_start=c_start + c_name.length+1 c_end=document.cookie.indexOf(";",c_start) if (c_end==-1) c_end=document.cookie.length return unescape(document.cookie.substring(c_start,c_end)) } }return ""}function setCookie(c_name,value,expiredays){var exdate=new Date()exdate.setDate(exdate.getDate()+expiredays)document.cookie=c_name+ "=" +escape(value)+((expiredays==null) ? "" : ";expires="+exdate.toGMTString())}function checkCookie(){username=getCookie('username')if (username!=null && username!="") {alert('Welcome again '+username+'!')}else { username=prompt('Please enter your name:',"") if (username!=null && username!="") { setCookie('username',username,365) } }}document.onclick = function(){ setCookie("aaaa",111,123);//第三个参数应该是有效期天数,很少用,不确定。 var aaa = getCookie("aaaa"); alert(aaa);}你这个在W3C上面的cookie上看下吧,代码大概是这样用的。不过很少用带有效期的,所以不能确定有效期的设置这样对不。 一般是没有什么必要用COOKIE存储这些信息的.很多事不是能不能做,而是应不应做. 看你贴出来的示例中并没有URL跳转呀??1:如果你click后要跳转去别的页面,然后需要在那个页面也能够初始化选中页面对应的菜单名的话。则将当前页面的url与菜单中的href做对比,然后设置2:按你说的cookie的思路:如果能加上ID这还有什么问题吗?直接保存好id,然后初始化初始化时:$('#'+id).trigger('click');就可以触发它的点击事件,使得你说的那些"因为一级,二级菜单被单击还有jquery的一些特效"可以被正常执行了PS:就你现在贴出来的这个手风琴的菜单代码,没人会认为它有需要用cookie去保存状态的必要。如果有页面跳转应该在代码中表现出来。或者稍微描述一下你的应用场景也好很多 新手求助~JS中文件路径 localhost可以访问,但IP访问却报404 帮忙找一颗JS树 还是有关 js 弹窗有问题? Extjs的Tab中grid的自动宽度问题 在写页面时使用变量 请教往地图上插小红旗 用 javascript 可以读出地址栏中的参数的值 啊??????????? 同一页面下超连接显示问题 好像这个问题没人提过,多是判断是数字,字母的 这个方法怎么改? 本地数据库经纬度 调用百度地图API 在百度地图上显示 用什么方案实现的问题。。 特效不支持中文字体
color:red;
}
li a:hover{
color:green;
}
li a:active{
color:yellow;
}
li li a:active{
color:blue;
}是要这样的效果吗?这个试试用伪类解决
用cookie就有些麻烦了。
而且伪类也可以多个叠加
li li a:visted:hover{}
这样就表示被访问过的,再出现鼠标悬浮时的效果,该一下相应的内容试试能不能达到你要求的效果。
因为一级,二级菜单被单击还有jquery的一些特效,所以我想的还是只能用cookies。样式的变化已经没问题,就是不能保存状态。
if (document.cookie.length>0)
{
c_start=document.cookie.indexOf(c_name + "=")
if (c_start!=-1)
{
c_start=c_start + c_name.length+1
c_end=document.cookie.indexOf(";",c_start)
if (c_end==-1) c_end=document.cookie.length
return unescape(document.cookie.substring(c_start,c_end))
}
}
return ""
}function setCookie(c_name,value,expiredays){
var exdate=new Date()
exdate.setDate(exdate.getDate()+expiredays)
document.cookie=c_name+ "=" +escape(value)+
((expiredays==null) ? "" : ";expires="+exdate.toGMTString())
}function checkCookie(){
username=getCookie('username')
if (username!=null && username!="")
{alert('Welcome again '+username+'!')}
else
{
username=prompt('Please enter your name:',"")
if (username!=null && username!="")
{
setCookie('username',username,365)
}
}
}
document.onclick = function(){
setCookie("aaaa",111,123);//第三个参数应该是有效期天数,很少用,不确定。
var aaa = getCookie("aaaa");
alert(aaa);
}你这个在W3C上面的cookie上看下吧,代码大概是这样用的。不过很少用带有效期的,所以不能确定有效期的设置这样对不。
很多事不是能不能做,而是应不应做.
2:按你说的cookie的思路:如果能加上ID这还有什么问题吗?直接保存好id,然后初始化
初始化时:$('#'+id).trigger('click');就可以触发它的点击事件,使得你说的那些"因为一级,二级菜单被单击还有jquery的一些特效"可以被正常执行了PS:就你现在贴出来的这个手风琴的菜单代码,没人会认为它有需要用cookie去保存状态的必要。如果有页面跳转应该在代码中表现出来。或者稍微描述一下你的应用场景也好很多