有条件地加载jQuery
我有一个网站正在从Google的CDN服务器加载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
<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]>