防止在IE6中包含javascript

防止在IE6中包含javascript,javascript,internet-explorer-6,Javascript,Internet Explorer 6,我很想听听你对这个问题的看法: 我正在使用LinkedIn的按钮功能,它是这样来的: <script src="http://platform.linkedin.com/in.js" type="text/javascript"></script> <script type="IN/MemberProfile" data-id="http://www.linkedin.com/pub/profile" data-format="click" data-text="L

我很想听听你对这个问题的看法:

我正在使用LinkedIn的按钮功能,它是这样来的:

<script src="http://platform.linkedin.com/in.js" type="text/javascript"></script>
<script type="IN/MemberProfile" data-id="http://www.linkedin.com/pub/profile" data-format="click" data-text="LinkedIn Profile"></script>

唯一的问题是它在IE6中的渲染效果非常差,所以我只想在IE6中隐藏该按钮,我曾考虑过使用
,但这也会阻止它加载到除IE之外的任何其他浏览器中,另一个选项是使用jquery:
if($.browser.msie&&$.browser.version==“6.0”){
但是如何使用SRC-javascript文件实现这一点

有什么想法吗?谢谢

试试这个

<!--[if ! lte IE 6]>Javascript code here<![endif]-->

或者类似的事情

<!--[if (!IE)|(IE gt 6)]>Javascript code here<![endif]-->


或者只需使用innerHTML将两个脚本标记添加到DOM。

您可以使用jQuery的
getScript
方法

if(!($.browser.msie && $.browser.version=="6.0"))
    $.getScript('http://platform.linkedin.com/in.js');

你说你试过这个:

<!--[if gte IE 7]>Javascript code here<![endif]-->

正如您所说,这将阻止非IE浏览器查看脚本

但是有一种方法可以指定其他浏览器将忽略的条件注释。您只需删除使其成为注释的连字符,如下所示:

<![if gte IE 7]>Javascript code here<![endif]>
Javascript代码在这里
这将适用于所有浏览器,IE7之前的IE除外

更多信息,请参阅

(顺便说一句,这是离题的,我相信你已经听过无数次了,但我还是郑重建议你放弃对IE6的支持——现在几乎没有人再使用它了)

if($.browser.msie&&$.browser.version==“6.0”){
$('head')。追加(“”)
}

非常接近,但这也会阻止它被包括在非IE浏览器中。谢谢Spudley,它工作得非常好!我不知道条件注释可能性的这种特殊变化。(我听说你提到了IE6……但我的公司有1000名员工,我没有太多选择……)
<![if gte IE 7]>Javascript code here<![endif]>
if($.browser.msie && $.browser.version=="6.0"){
  $('head').append('<script src="http://platform.linkedin.com/in.js" type="text/javascript"></script><script type="IN/MemberProfile" data-id="http://www.linkedin.com/pub/profile" data-format="click" data-text="LinkedIn Profile"></script>')
}