2010-09-17 76 views

回答

12

实际上有一个<noscript>标记,当javascript不可用时,您可以使用它来显示内部包含的内容。

喜欢的东西:

<noscript> 
    <div> 
     You must enable javascript to continue. 
    </div> 
</noscript> 

股利就不会显示对方的JavaScript,这是很容易分辨的JavaScript的工作,不管你是否需要它来ping服务器的背影让它知道,或者用它来执行一些更高级的功能。

13

将邮件放在<div>中,邮件中包含<noscript>标签。如果JavaScript被禁用,则<div>将被渲染为DOM的一部分;如果启用脚本,div将不在DOM中。

例如,您可以在打开<body>标记后立即放置以下内容,并通过CSS将其设置为具有红色背景以使其更加突出。

<noscript> 
    <div id="js-warning"> 
     To be able to access all of our features, you need a browser that supports JavaScript, and it needs to be enabled. 
    </div> 
</noscript> 
2

浏览器可能是“JavaScript的”,但并不意味着JavaScript还没有被用户或管理员禁用。没有真正的方法来确定这一点。最佳做法决定“渐进式增强”;也就是说,您的应用程序需要先不使用JavaScript,然后为启用它的那些(大多数)添加JavaScript功能。

http://www.alistapart.com/articles/progressiveenhancementwithjavascript/

http://www.webcredible.co.uk/user-friendly-resources/dom-scripting/progressive-enhancement.shtml

避免记这一点,熊哈克解决方案,也有对人与屏幕阅读器可访问性问题。 <noscript>仅当JavaScript被禁用时才会显示内容。大多数屏幕阅读器用户都启用了JavaScript,因此他们将看到您的无法访问的脚本,而不是<noscript>内容。

4

“如果关闭它,则提示警告消息”是自相矛盾的,因为如果它被关闭,则不能以编程方式“执行”任何事情。

你可以做它的其他方式“轮,但是:作出这样的消息出现在默认情况下,并有JavaScript的隐藏它,如果它被打开(例如,通过资料核实的可视性设置为隐藏),

,或者你依靠浏览器的标准符合性并使用<noscript>标签。如果没有启用javascript,<noscript>内部的内容会显示。顺便说一句,请务必设置脚本标记的type =“text/javascript”属性。

参见http://www.w3.org/TR/REC-html40/interact/scripts.html#h-18.3

+1

+1最佳答案,并链接:-)提高警报消息 – IrishChieftain 2010-09-17 22:11:46

相关问题