我有用到一个美化select控件的jquery控件,可是最近突然发现在IE的对话框中有时候会出现异常的情况。跟踪代码后发现是在控件调用jQuery的width函数时返回了零,导致显示不出来了。而这个获取是根据原对象的width来的,原select对象的style="width:155px",有指定width。但是在调用width()函数获取到的结果是0。另外补充说明:
1、我为了避免渲染延迟,控件处理都是在页面最后加一段JAVASCRIPT进行处理的。
2、如果改到onload或者ready事件中处理是没问题的
3、如果不是IE对话框也没有发现问题有谁能告诉这是什么原因,是jQuery的bug吗?貌似jquery取了offsetWidth,这个属性在IE对话框的ready之前也是0。
1、我为了避免渲染延迟,控件处理都是在页面最后加一段JAVASCRIPT进行处理的。
2、如果改到onload或者ready事件中处理是没问题的
3、如果不是IE对话框也没有发现问题有谁能告诉这是什么原因,是jQuery的bug吗?貌似jquery取了offsetWidth,这个属性在IE对话框的ready之前也是0。
天知道Jquery.width()取得是什么宽度
另, 所以针对页面上的dom操作请都放到$(document).ready()中, 因为html解析时顺序加载, 所以很有可能导致在执行某语句时页面的dom并不完整.