jquery treeview插件在ie6上的bug修正

使用jquery 的treeview插件,在ie6上运行时,如果树对象包含在table中,则树的显示行为不正常,本来应该打开的节点,显示为关闭。

经过问题查找,发现是由于ie6不支持css搜索引起的,代码在treeview的插件脚本中,修正如下:

查找applyClasses方法,在语句 if (!settings.prerendered) { 判断后,// create hitarea if not present注释之前的代码,如下:

// handle closed ones first
				this.filter(":has(>ul:hidden)")
						.addClass(CLASSES.expandable)
						.replaceClass(CLASSES.last, CLASSES.lastExpandable);
						
				// handle open ones
				this.not(":has(>ul:hidden)")
						.addClass(CLASSES.collapsable)
						.replaceClass(CLASSES.last, CLASSES.lastCollapsable);
						
	            // create hitarea if not present

修改为:

				// handle closed ones first
				if($.browser.msie&&($.browser.version == "6.0")&&!$.support.style){
					var hasHidenUl = false;
					$(this).find("ul").each(function(){
						if($(this).css("display")!="block"){
							$(this).parent().addClass(CLASSES.expandable)
							.replaceClass(CLASSES.last, CLASSES.lastExpandable);
						}else{
							$(this).parent().addClass(CLASSES.collapsable)
							.replaceClass(CLASSES.last, CLASSES.lastCollapsable);
						}
					});
				}else{
					this.filter(":has(>ul:hidden)")
							.addClass(CLASSES.expandable)
							.replaceClass(CLASSES.last, CLASSES.lastExpandable);
					// handle open ones
					this.not(":has(>ul:hidden)")
							.addClass(CLASSES.collapsable)
							.replaceClass(CLASSES.last, CLASSES.lastCollapsable);
				}		
						
	            // create hitarea if not present


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值