【发布时间】:2019-09-20 15:38:59
【问题描述】:
我有一个包含很多内容的页面。如果 JavaScript 被禁用,该页面可能会显示自定义错误消息。该页面不得显示除提示消息之外的任何其他内容。我正在发布一张图片,类似于我的意思的错误提示。我的脑海中有一些图像的错误提示..
我怎样才能做到这一点?
【问题讨论】:
-
对不起,伙计们.. 更新了问题
标签: javascript cross-browser dom-events
我有一个包含很多内容的页面。如果 JavaScript 被禁用,该页面可能会显示自定义错误消息。该页面不得显示除提示消息之外的任何其他内容。我正在发布一张图片,类似于我的意思的错误提示。我的脑海中有一些图像的错误提示..
我怎样才能做到这一点?
【问题讨论】:
标签: javascript cross-browser dom-events
一般的想法是,您可以将消息 HTML(没有理由使用图像,文本可以正常工作)放在 noscript 标记中,如下所示:
<noscript>You must enable Javascript in order to use this site.</noscript>
如果您希望 noscript HTML 模糊/隐藏整个页面的其余部分,那么您需要确保它占据了整个页面并且位于顶部。你可以这样做:
<noscript>
<div id="noscript" style="position: absolute; top: 0; left: 0; background-color: #FFF; z-index: 999; height: 100%; width: 100%; text-align: center; padding-top: 50px;">
You must enable Javascript in order to use this site.
</div>
</noscript>
这是一个jsFiddle,它显示了 noscript div 的工作原理。小提琴不包含实际的<noscript> 标签,因为没有 JS,小提琴将无法工作,但它向您展示了绝对定位的 div 如何阻止所有其他内容。在 fiddle 的 HTML 区域中向下滚动以查看 noscript div HTML(这是我复制到这篇文章中的)。
【讨论】:
你的问题不是很清楚,但我认为你想做的是:
当用户未启用 JS 时显示错误消息。
如果是这样,您可以在页面上添加一个白色背景和错误消息的叠加层。
您可以在页面的头部添加(非常非常简单的示例):
<script>
// js code to remove the message
</script>
如果我不明白你的问题,请直说。
【讨论】: