Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/376.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 由于未正确检测到怪癖模式,带有jQuery 1.10.2的SimpleModel无法在IE中工作_Javascript_Jquery_Internet Explorer_Simplemodal - Fatal编程技术网

Javascript 由于未正确检测到怪癖模式,带有jQuery 1.10.2的SimpleModel无法在IE中工作

Javascript 由于未正确检测到怪癖模式,带有jQuery 1.10.2的SimpleModel无法在IE中工作,javascript,jquery,internet-explorer,simplemodal,Javascript,Jquery,Internet Explorer,Simplemodal,我在jQuery1.10.2中使用SimpleModel1.4.4,在IE8中出现“未实现”错误。这是由于SimpleModel错误地检测到IE处于怪癖模式,并执行“修复”功能,该功能本应修复IE6和IE7中的问题,但在IE8中出现错误(可能还有IE9+) SimpleModel将执行以下检查以查看是否存在异常: browser.ieQuirks = browser.msie && !$.support.boxModel; 问题是,$.support.boxModel来自jQu

我在jQuery1.10.2中使用SimpleModel1.4.4,在IE8中出现“未实现”错误。这是由于SimpleModel错误地检测到IE处于怪癖模式,并执行“修复”功能,该功能本应修复IE6和IE7中的问题,但在IE8中出现错误(可能还有IE9+)

SimpleModel将执行以下检查以查看是否存在异常:

browser.ieQuirks = browser.msie && !$.support.boxModel;
问题是,$.support.boxModel来自jQuery 1.10,所以
!$。support.boxModel
始终返回true


我想知道在IE中检测怪癖模式的最佳方法是什么,这样我就可以替换
!$。support.boxModel

这是jquery拿走的东西,如果需要,您可以将它重新插入

var div = document.createElement("div");
div.style.width = div.style.paddingLeft = "1px";

document.body.appendChild( div );
jQuery.support.boxModel = div.offsetWidth === 2;

Simple Modal[1.4.4]的最新版本使用了$.support.boxModel,[Line 239],这是Jquery 1.10不支持的*

要解决此问题,请更换以下行:

// Line 240: browser.ieQuirks = browser.msie && !$.support.boxModel;


在使用插件之前,您只需自己提供boxModel值,或者您只需将插件代码中的检测替换为有效的检测…
browser.ieQuirks = browser.msie && (document.compatMode === "BackCompat");