我需要能够支持Internet Explorer6-8中的所有CSS3伪类和属性选择器。使用名为selectivizr的polyfill可以做到这一点。它需要像jquery或mootools这样的javascript库才能工作。问题是,虽然selectivizr通过mootools支持所有伪类和属性选择器,但jquery无法识别或不支持其中的11个。因此,尽管我一生中从未使用过mootools,但我还是不得不将其作为外部脚本添加到我的网页中,并在条件评论中加上selectivizr,以检测该网页是否已从Internet Explorer 6-8访问过。
如下所示:
<!--[if (gte IE 6)&(lte IE 8)]>
<script type="text/javascript" src="mootools-core.js"></script>
<script type="text/javascript" src="selectivizr.js"></script>
<noscript><link rel="stylesheet" href="[fallback css]" /></noscript>
<![endif]-->
问题是mootools和jquery已经被认为是相互冲突的。我的网页上到处都是jquery。使用jQuery.noConflict()将其全部编辑并不是一个真正的选择,也不能将其全部包装在
(function ($) {
// $ is actually jQuery here
$(document).ready(function () {
})
}(jQuery))
另外,我不知道是否是这样,但是selectivizr使用的多个javascript库的存在可能会导致selectivizr本身的功能出现问题。我认为我需要做的是添加一些mootools代码到我的网页中,以防止它与jquery冲突,同时确保selectivizr不会被jquery检测到,并且只能响应mootools。但是因为我从来没有用过mootools,所以我不知道该怎么做。有人能帮上忙吗?
附言:我没有Internet Explorer 6-8,所以我不能测试这个,所以如果你给出答案,请小心并负责任。
https://stackoverflow.com/questions/44553944
复制相似问题