ASP.NET - 如何从IE隐藏JavaScript?

时间:2011-10-27 04:23:24

标签: javascript asp.net

我的.ASCX文件中有一些Google Plus One javascript:

<script type="text/javascript">
    (function () {
        var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true;
        po.src = 'https://apis.google.com/js/plusone.js';
        var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s);
    })();
</script>

我需要隐藏IE7和IE8浏览器中的这段代码。

这样做的正确方法是什么?

3 个答案:

答案 0 :(得分:2)

有很多方法可以做到这一点,如果你已经包含jQuery,你可以使用它的浏览器嗅探功能。另一种选择是你可以使用IE条件评论:http://msdn.microsoft.com/en-us/library/ms537512%28v=vs.85%29.aspx

答案 1 :(得分:1)

标记方法

<%  If Not (Page.Request.Browser.Browser.StartsWith("IE", StringComparison.OrdinalIgnoreCase) AndAlso Page.Request.Browser.MajorVersion < 9) Then%>
This is either Not IE, or IE 9 or greater<br />
<% end if %>

代码隐藏方法

将脚本置于PlaceHolder&amp;将其可见性设置为true / false。用于跟踪功能以检测asp.net中的浏览器。

public static bool IsIE(Page page)
{
  if (page != null && page.Request != null && page.Request.Browser != null)
  {
    return page.Request.Browser.Browser.StartsWith("IE", StringComparison.OrdinalIgnoreCase) && (page.Request.Browser.MajorVersion == 7 || page.Request.Browser.MajorVersion == 8);
  }

  return false;
}

答案 2 :(得分:0)

<!--[if !(IE 7)&!(IE 8)]>
You are not using IE7 or IE8
<![endif]-->