Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/71.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
有条件地加载jQuery_Jquery_Internet Explorer 6 - Fatal编程技术网

有条件地加载jQuery

有条件地加载jQuery,jquery,internet-explorer-6,Jquery,Internet Explorer 6,我有一个网站正在从Google的CDN服务器加载jQuery: <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.3/jquery.min.js"></script> 对于那些禁用javascript的浏览器,该网站仍能正常运行。(优雅的退化) 对于使用IE6的用户,javascript可以运行,但看起来并不漂亮。我希望做的是防止jquery加载到I

我有一个网站正在从Google的CDN服务器加载jQuery:

<script type="text/javascript"
src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.3/jquery.min.js"></script>

对于那些禁用javascript的浏览器,该网站仍能正常运行。(优雅的退化)

对于使用IE6的用户,javascript可以运行,但看起来并不漂亮。我希望做的是防止jquery加载到IE6上

我认为以下方法可行:

<!--[if gt IE 6]>
<script type="text/javascript"
src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.3/jquery.min.js"></script>
<![endif]-->

条件标记-如果浏览器大于IE6,则加载jQuery。但是,我认为这会阻止JQuery在Safari、Chrome、Firefox等中加载

另一个解决方案是在PHP中检测浏览器,然后为IE6以外的浏览器加载jQuery。这是最好的选择吗???

您需要使用:


按照已有的条件注释,只使用不带
--
字符的条件注释(这样其他浏览器就不会将其视为注释)

试图在服务器上进行浏览器检测总是会带来麻烦。它不是100%可靠,因为它可以被欺骗。条件注释的优点是它不能被欺骗——它总是有效的


就我个人而言,我只是忽略了IE6——它正在迅速从浏览器市场份额中消失(目前在大多数发达国家已降至2%以下),而在IE6中让网站看起来丑陋只能帮助加速它的消亡。但写一个优雅降级的网站,可以应对IE6,这是一个不错的选择。这是值得称赞的,因为这比现在大多数人付出的努力都要多。

当你尝试使用不存在的
$
函数时,这只会在IE6中产生JS错误。有更好的解决办法。@SLaks他可能用的是香草js alsoIE6低于2%?真的吗<代码>[需要引用]@SLaks-英国:2.1%,@SLaks-美国:1.8%,@SLaks-德国:0.75%,同意,StatCounter只是一个统计站点。其他人也有自己的数据,但总的趋势是明确的——IE6正在快速下降。当然,总会有人坚持,所以它永远不会达到零,但现在它已经足够低了,人们可以合法地放弃对它的支持。
<![if gt IE 6]>
<script type="text/javascript"
src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.3/jquery.min.js"></script>
<![endif]>