您的位置:首页 > Web前端 > JQuery

jquery, select, option, firefox, chrome, IE, opera...

2011-07-13 20:05 573 查看
本来目标只是隐藏select下的option
 
最初尝试用jQuery里的$("select option").hide()和$("select option").show()控制option隐藏与出现,firefox4和chrome10均ok,但是chrome不能正确判断:hidden属性(只要进行过.hide(),.is(":hidden")就永远为true),随后发现可以用(.css("display:none")=="none")判断,然后发现IE(我用的是腾讯TT,疑似6)等也可以判断。但是,IE(以及opera、safari)不支持option的display属性的,hide、show操作会改变display的值,但option的可见性不会变化


之后痛苦地查解决方案,大家均表示要在代码里备份一下然后remove,需要的时候再根据备份add,觉得极为麻烦,几乎放弃,突然google到一个,使用.wrap("<span style='display:none'></span>"); 达到隐藏效果,再使用unwrap()去除隐藏效果。还能天然使用jQuery的$("select>option")和$("select span option")判断是否隐藏,终于完成...

btw, firebug+firerainbow不错,不过,这导致ff下的代码总是第一个迅速调通的,然后就只能







......还有,刚发现上面的方法在opera下option只是会变成空白,但还可以选

....算了,一共就5个人会访问的页面里没人会用opera的...
 
Thanks to:http://www.jb51.net/article/20842.htm
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐