解决DIV盖住select的方法-2
今天对上次div盖住select的方法进行了整合和改进,利用函数封装了一下,说说这次主要解决的问题:
- 将遮盖层与数据层分开。通过函数createEnvelopDiv方法动态生成遮盖层,来遮盖数据表现层,但是需要注意的是,当数据表现层的长宽和位置变化时,需要重新调用createEnvelopDiv方法
- 用insertAdjacentHTML方法来创建遮盖层。解决了必须要先创建遮盖层,后创建数据表现层的问题
- 利用单态的方式生成iframe。这样可以防止重复生成iframe对象,也就是针对每一个数据表现层只生成一个用于遮盖的iframe对象
- 将iframe的src定义为”javascript:false;”。今天在一个老外的blog上看到的,据说可以防止在https下出现安全警告框,这点有待考证
- 利用navigator增加对浏览器的判断。目前这个bug(div无法遮住select)存在与ie6里(ie更低的版本没有测过),ie7已经解决了这个问题
,所以函数判断了浏览器的类型和版本号,以便防止在别的浏览器中做重复的工作 - 此方法还可以用来遮盖flash对象,但是在firefox下需要为flash的html域增加如下代码
<param name="WMode" value="Transparent"></param>
具体的演示、应用和代码请查看
DEMO页
xLight:
方便多了,
今天在ms的网站上也看到了一个例子,呵呵
右上角的 Quick Links。暂时没看他是怎么实现的。
http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=C717D943-7E4B-4622-86EB-95A22B832CAA
30 08月 2006, 2:00 pmleeyupeng:
恩,确实,改天研究一下
31 08月 2006, 12:44 pm非主流童话:
嘿嘿,参考这个解决了个大问题:http://liuguanyu.blog.hexun.com/13862437_d.html
18 10月 2007, 12:11 am匿名:

21 04月 2008, 4:13 pm匿名:

2 07月 2008, 7:52 pmyd:

22 08月 2008, 5:32 pmThank you!
匿名:
sdfsdfsfsdfddddddddffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
28 08月 2008, 11:12 pm