我有一个网站正在从谷歌的CDN服务器加载jQuery:
<script type="text/javascript"
src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.3/jquery.min.js"></script>
对于禁用了javascript的浏览器,该网站仍能正常运行。 (优雅的退化)。
对于使用IE6的用户,javascript函数,但它看起来不漂亮。我要做的是防止在IE6上加载jquery。
我认为以下内容可行:
<!--[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。这是最好的选择吗?
答案 0 :(得分:6)
您需要使用downlevel-revealed comments:
<![if gt IE 6]>
<script type="text/javascript"
src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.3/jquery.min.js"></script>
<![endif]>
答案 1 :(得分:1)
使用条件注释,只有没有--
个字符才能使用条件注释(以便其他浏览器不会将其视为注释)。
尝试在服务器上进行浏览器检测总是会遇到麻烦。它不是100%可靠,因为它可以被欺骗。
表示条件评论的优点在于它不会被欺骗 - 它总会有效。就我个人而言,我只是忽略了IE6--它正在迅速从浏览器市场份额中消失(现在大多数发达国家都低于2%),并且在IE6中看起来丑陋的网站只会有助于加速它的消亡。但是,写一个优雅降级并可以应对IE6的网站做得很好。对此表示赞赏,因为这比现在大多数人都要努力。