`

解决了jquery.bgiframe.min.js的一个bug (jquery.bgiframe.min.js, line 10 character 978)

阅读更多

解决了jquery.bgiframe.min.js的一个bug

(jquery.bgiframe.min.js, line 10 character 978)

 

jquery.bgiframe.min.js是用于解决 IE6 select z-index 属性无效,select 标签遮挡 div 的 Bug。

 

参照:

1.jQuery bgiframe 插件解决 IE6 select z-index 属性无效

2.解决DIV在IE下被下拉列表select穿透的问题(二)

 

但是这个插件在判断IE的版本时,过于简单,导致在某些情况下会有bug。

报这个错误:

SCRIPT5022: DOM Exception: INVALID_CHARACTER_ERR (5) 
jquery.bgiframe.min.js, line 10 character 978

 

它在判断浏览器及使用的版本时使用的代码是:

 

if ($.browser.msie&&/6.0/.test(navigator.userAgent){
    ... ...
}

 其中

/6.0/.test(navigator.userAgent)

极易出问题

 

例如,如果navigator.userAgent是

"Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0)"

 时。这时,即使我的浏览器是IE9,但由于含有

Media Center PC 6.0

也会执行if段内的代码,导致错误的发生。

 

所以,可以通过修改版本判断的代码,来避免这个问题

if ($.browser.msie&&/IE 6.0/.test(navigator.userAgent){
    ... ...
}

 

 

 

 

 

分享到:
评论

相关推荐

    jquery.bgiframe.min.js

    JS包,可以用来规范一些JS限制问题,比如DIV被 select覆盖

    jquery.bgiframe.js

    IE6下解决弹出div 被父页面的select ...下载jquery.bgiframe.js ,在我的下载资源中有 2.需要修改div的属性,使用 $(function(){ $('#addDiv').bgiframe(); }); 下面是addDiv html: <input /> </div>

    jQuery UI dialog IE6下处理select框被遮挡jquery.bgiframe.js

    jQuery UI dialog IE6下处理select框被遮挡jquery.bgiframe.js

    jquery.bgiframe.js在IE9下提示INVALID_CHARACTER_ERR错误

    jquery.bgiframe.js在IE9下的错误 代码如下: SCRIPT5022: DOM Exception: INVALID_CHARACTER_ERR (5) jquery.bgiframe.js, 行8 字符976 错误代码 代码如下: 1 {if(!$(‘iframe.bgiframe’,this)[0])this....

    前端项目-jquery-bgiframe.zip

    本项目“前端项目-jquery-bgiframe.zip”聚焦于一个特定的jQuery插件——bgiframe,它专为了解决在Internet Explorer浏览器(尤其是早期版本)中遇到的z-index问题而设计。 z-index是CSS中的一个属性,用于控制元素...

    jquery.multiSelect下拉多选

    6. `jquery.bgiframe.min.js`:这是一个背景iframe插件,用于解决在某些IE浏览器中的Z-index问题,确保下拉框能正确显示在其他元素之上。 使用jQuery.multiSelect的基本步骤如下: 1. 在HTML中创建一个`<select>`...

    解决DIV在IE下被下拉列表select穿透的问题(二)

    为了解决这个问题,开发者们采取了一些技术手段,其中之一就是使用jQuery的一个插件——`jquery.bgiframe`。这个插件是专门为了解决在IE浏览器中元素背景和边框被下拉列表穿透的问题而设计的。它会在指定的元素上...

    JQuery写的日期控件

    `jquery.bgiframe.min.js` 是一个JQuery插件,它创建了一个背景iframe,用于解决某些浏览器下的Z-index问题,确保日期弹出框在所有情况下都能正确显示。 `datePicker.css` 文件包含了日期控件的样式定义,它决定了...

    jquery实现autocomplete插件(文本框下拉选项).zip

    6. `jquery.bgiframe.pack.js`:这个插件用于解决IE浏览器的背景透明问题,使下拉列表在所有浏览器中都能正确显示。 在使用jQuery实现Autocomplete插件时,主要步骤如下: 1. 引入依赖:确保HTML文件中引入了...

    jquery日历插件

    `jquery.bgiframe.min.js`是一个jQuery插件,主要用于解决在IE浏览器中,浮动元素与背景图像之间的Z-index问题。在某些情况下,它可以帮助确保日历插件在所有浏览器上的表现一致。 `source`目录可能包含了插件的源...

    bgiframe_2.1.1.zip

    而bgiframe_2.1.1.zip则是jQuery的一个重要插件,它专为解决在特定浏览器环境中对话框(dialog)背景透明度问题而设计。这个小巧的插件极大地提升了用户体验,使得对话框在各种浏览器环境下都能保持一致的显示效果。...

    JS147-46jquery日历实用代码

    7. **jquery.bgiframe.min.js**:这是一个jQuery插件,用于在IE浏览器下解决浮动元素的背景显示问题。在这个日历插件中,它可能用于确保日历在有IFrame的页面上正确显示。 8. **易泡素材网.txt**:这可能是一个来源...

    jquery多选框

    4. `jquery.bgiframe.js`:这是一个jQuery插件,主要用于解决在IE6和IE7下浮动元素与背景图片重叠的问题,确保多选框在这些旧版浏览器中的正确显示。 5. `前端页面.text`:这个文件很可能包含了一个或多个示例页面...

    jquery loading

    `jquery.bgiframe.min.js`是jQuery的一个插件,用于解决某些情况下背景透明度问题,特别是在Internet Explorer浏览器中的兼容性问题。当加载等待效果覆盖整个页面时,这个插件可以帮助确保加载图层正确地覆盖在所有...

    经典jquery日历代码

    bgiframe是jQuery的一个插件,主要用于解决IE6下的透明背景问题。在某些情况下,它可以使元素的背景在IE6中正确显示,特别是在浮动元素和绝对定位的情况下。 6. **使用说明.txt**: 这个文件提供了关于如何集成和...

    点击input输入框弹出选择层(基于jquery)

    `jquery.bgiframe.js`是一个旧版的jQuery插件,用于解决IE浏览器下的背景透明问题,确保选择层能正确显示在其他元素之上。`jquery-1.3.1.js`是jQuery的核心库文件,包含了大部分jQuery功能。 5. **网页特效和模板**...

    JQuery弹出恒定居中的窗口

    7. `jquery.bgiframe.min.js`:这是一款jQuery插件,用于解决IE浏览器下浮动元素与背景图片的Z-index问题,确保弹出窗口能够正确显示在其他内容之上。 综上所述,这个项目展示了如何使用jQuery和CSS来创建一个功能...

    jquery.dialog插件参数说明

    当`bgiframe`设置为`true`时,对话框下方会插入一个背景iframe,用于解决在Internet Explorer浏览器中,弹窗无法覆盖下拉菜单或`<select>`元素的问题。启用方式如下: ``` $(".class").dialog({bgiframe:true}); ```...

Global site tag (gtag.js) - Google Analytics