不支持浏览器时显示消息

时间:2008-12-07 22:17:58

标签: internet-explorer popup cross-browser

我想使用我的网站警告Internet Explorer 6的用户,IE6过去曾与我的网站存在严重的兼容性问题。这样做的最佳方式是什么?

理想情况下,我希望显示一条消息(不是新窗口,但是如果可能的话,还会显示一个消息框),警告IE6用户这些问题,并建议他们更新到IE7,Firefox 3或Opera 9.5。

9 个答案:

答案 0 :(得分:32)

目标IE的最佳方式是使用条件注释。然后,您可以添加一些仅在Internet Explorer中显示的特定HTML。

<!--[if IE 6]>
<h1>Please upgrade your browser!</h1>
<![endif]-->

有关此主题的更多信息:

http://www.quirksmode.org/css/condcom.html

答案 1 :(得分:13)

好的,我会让这很容易。没有弹出窗口!统计灾难。这是一个很好的小东西坐在上面。我只是真的担心IE 6或更早,因为它是最糟糕的罪魁祸首。以下是条件陈述(我认为最好的方式)。

坚持这个(放入你想要的任何内容):

<!--[if lte IE 6]>
<div id="warning">
<h4 class="red">Your Browser Is Not Supported!</h4><br />
<p>Please upgrade to <a href='http://getfirefox.com'>FireFox</a>, <a href='http://www.opera.com/download/'>Opera</a>, <a href='http://www.apple.com/safari/'>Safari</a> or <a href='http://www.microsoft.com/windows/downloads/ie/getitnow.mspx'>Internet Explorer 7 or 8</a>. Thank You!&nbsp;&nbsp;&nbsp;<a href="#" onClick="document.getElementById('warning').style.display = 'none';"><b>Close Window</b></a></p>
</div>
<![endif]-->

将此贴在外部造型单上。 我不会使用内联样式

#warning        {position:relative; top:0px; width:100%; height:40px; background-color:#fff; margin-top:0px; padding:4px; border-bottom:solid 4px #000066}

无论你想要它的风格 - 坚果!你可以使用javascript来检测任何浏览器,所以如果你知道如何,它可以增加更多的特异性。

这将是一个非常小的框,位于您的内容之上,让您的用户看到他们的浏览器很糟糕。

答案 2 :(得分:8)

如果你想确定它是否支持浏览器,你可能想要使用jQuery的浏览器检测,如:

<script type="text/javascript">
// check if browser is IE6 (when IE) or not FF6 (when FF)
if (($.browser.msie && $.browser.version.substr(0,1) == '6')
    || ($.browser.mozilla && $.browser.version.substr(0,1) != '3')) {
        $('#browserWarning').show();
}
</script>

更新:正如different所说,更好的选择是使用IE if语句,例如:

<style type="text/css">
/* this would probably be in a CSS file */
#browserWarning { display:none; }
</style>
<!--[if IE 6]>
<style type="text/css">
#browserWarning { display:; }
</style>
<![endif]-->

此选项更好,因为它不需要浏览器版本“完美”。但是,如果您要检测其他浏览器,因为它们不支持if语句,这将无效。然后你可能想用jQuery来检测浏览器,虽然我建议尽量避免使用它。

答案 3 :(得分:5)

Conditional comments提供了一种仅显示特定版本Internet Explorer的内容的方法。

<!--[if IE 6]>
Special instructions for IE 6 here
<![endif]-->

答案 4 :(得分:5)

有一个名为推高网络的项目,该项目建议所有用户升级到其浏览器的较新版本。它不引人注目,易于添加。

正如一些人所建议的,最好的办法是使用条件注释有效地定位Internet Explorer。

对于其他评论者,随着Internet Explorer 8的发布(有效添加了两个额外的浏览器进行测试:标准+兼容模式),Internet Explorer 6已经开始运行。现在是时候让这些人升级浏览器,在某些情况下升级操作系统/计算机。 Internet Explorer 6是网络的进展holding back。支持资源是一种耗费。它已达到Netscape 4的地位。主要的网站和公司也加入了这场战斗。

更多阅读:

答案 5 :(得分:5)

https://browser-update.org

  

网页设计师的一项举措,旨在告知用户有关浏览器更新的信息

答案 6 :(得分:2)

我的建议是不要使用弹出窗口或消息框。它们非常烦人,并且会带来糟糕的用户体验。最好在通知中插入一些<div>,并使其从页面的其余部分中脱颖而出。不要过度,只需指定一些颜色,确保它不被忽视 (并且请:不要使用<blink>; - )

答案 7 :(得分:1)

虽然告诉用户更新他们的浏览器并且实际上这样做会很棒,但实际上并不会发生。如果用户现在还没有升级他们的浏览器,通常有理由,缺乏计算机知识或无法控制计算机本身。例如,员工在工作机器上浏览您的站点。

我真的认为您应该重新考虑修复用户将遇到的问题或考虑渐进式增强功能。我们的想法是,您的网站的基本功能适用于每个浏览器,然后开发任何额外的功能,以便它只在可以支持它的浏览器上可见/可用。

答案 8 :(得分:-3)

我的建议是修复你的网站;)不用说,我会在页面顶部使用一个小横幅,就像Firefox和IE中的小型不显眼的对话框一样。不是消息框或实际上会干扰很多的东西。

相关问题