簡體   English   中英

防止在IE6中包含javascript

[英]Prevent javascript include in IE6

我很想聽聽你對這個特殊問題的看法:

我正在使用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中的那個按鈕,我想過在這里使用<!--[if gte IE 7]>Javascript code here<![endif]-->但是這也會阻止它在IE之外的任何其他瀏覽器中加載,另一種選擇是使用jquery: if($.browser.msie && $.browser.version=="6.0"){ }但我怎么做,與SRC JavaScript文件?

有什么想法嗎? 謝謝!

你說你試過這個:

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

正如您所說,這將阻止非IE瀏覽器查看腳本。

但是有一種方法可以指定其他瀏覽器會忽略的條件注釋。 您需要做的就是刪除使其成為注釋的連字符,如下所示:

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

這將在除IE之前的IE之外的所有瀏覽器中使用。

有關更多信息,請參見http://en.wikipedia.org/wiki/Conditional_comment

(順便說一下,關於主題,我相信你已經聽過這一百萬次了,但我會認真地建議放棄對IE6的支持 - 實際上沒有人再使用它了)

試試這個

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

或類似的東西

<!--[if (!IE)|(IE gt 6)]>Javascript code here<![endif]-->
if(! IE6){
    var script = document.createElement("script");
    script.src = "src_to_js_file";
    document.body.appendChild(script);
}

或者只使用innerHTML將兩個腳本標記添加到DOM。

您可以使用jQuery的getScript方法

if(!($.browser.msie && $.browser.version=="6.0"))
    $.getScript('http://platform.linkedin.com/in.js');
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>')
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM