1

我有一个使用大量 javascript 的网站。我的问题是禁用浏览器中的 javascript 选项,网站将无法正常运行。

我找到的两个解决方案是:

  1. 我在页面的标题中添加了这个标签:

    <noscript><meta http-equiv="refresh" content="0; URL=/noscript.php" />
    

    加载时页面被重定向到新页面。但是在做一些研究。我在stackoverflow上发现它有seo问题,因为爬虫会索引noscript页面,从而影响网站的seo。

  2. 当在 noscript 标记内禁用 javascript 时,只需显示一条类似于 stackoverflow 的消息。我认为他们还创建了单独的表单,在发生这种情况时使用服务器端验证。

除了在所有表单上重做服务器端验证的功能。有没有其他我可以使用的解决方案。另外我想知道解决方案 1 是否不是一个好的选择。正如我所见,facebook 也在使用它。

提前致谢。

我发现这可以按我想要的方式工作。想知道,你会怎么想?

<noscript>
 <font face=arial>JavaScript must be enabled in order for you to use the site.</font>      <style type="text/css">
#wrapper { display: none; }
</style>  
</noscript> 
4

1 回答 1

1

正如评论中提到的,您应该始终在服务器端和客户端验证用户输入。这可能不是您想听到的答案(这首先意味着需要额外的工作),但如果您不这样做,那么您的网站就会受到攻击。

在构建需要支持非 JavaScript 用户的网站时,我发现从基本的 HTML/CSS 网站开始并在顶部添加 JavaScript 功能要容易得多。这称为渐进增强

如果您不需要(或真的不想)支持非 JavaScript 用户,那么我会选择选项 2——请提示用户他们需要启用 JavaScript 才能使用网站的所有功能。

于 2012-11-09T10:12:07.547 回答