我按照附件运行了一个非常简单的enquire.js测试,发现它没有得到IE9的响应。其他几款浏览器反应良好(FF,Chrome,Safari)。我已经在IE9中测试了来自GITHUB的测试套件,运行正常 - 所以我必须遗漏一些东西。任何帮助表示赞赏!
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>enquire.js test</title>
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="viewport" content="width=device-width">
</head>
<body>
<div id="frame">hello</div>
<script src="js/libs/jquery.1.7.1.js"></script>
<script src="../dist/enquire.js"></script>
<script>
$(document).ready(function(){
enquire.listen(50);
enquire.register("screen and (max-width: 1000px)",
{
match : function(){
$("#frame").css("background-color","#f00");
},
unmatch : function(){
$("#frame").css("background-color","#0f0");
},
});
});
</script>
</body>
</html>
答案 0 :(得分:3)
IE9不支持matchMedia
API,因此您必须添加polyfill才能使其正常运行。您可以根据需要将polyfill添加到页面中,只要在查询之前加载它。我个人使用Modernizr有条件地装载polyfills,但这是个人喜好。
希望有所帮助