【问题标题】:Is content loaded/styled/parsed in the <noscript> tag even when JavaScript is enabled?即使启用了 JavaScript,是否也会在 <noscript> 标记中加载/样式化/解析内容?
【发布时间】:2023-04-01 06:01:01
【问题描述】:

对于我的网站,我在

标签: html noscript


【解决方案1】:

答案:

  1. 图像在控制台中不显示为资源,因此未加载。
  2. Chrome 引用 noscript 标签的 innerHTML,使其成为纯文本。

【讨论】:

    【解决方案2】:

    如果启用了 JavaScript,该图像是否仍在加载,是否应用了 CSS 样式?

    取决于浏览器的实现。大多数现代浏览器都支持使用&lt;noscript&gt; 标签,但在某些情况下&lt;noscript&gt; 甚至可以在&lt;script&gt; 执行失败的情况下工作。

    但是,如果&lt;noscript&gt;执行(我知道),那么 CSS 样式将应用于页面上的元素,因为它们已添加到 DOM 中

    DOM 事件监听器呢?

    如果在浏览器上启用了脚本,并且您提供 &lt;noscript&gt; 内容,则内容应符合要求,以免导致解析错误。 Look here for more

    我建议您不要使用&lt;noscripts&gt;,因为正如手册所说:

    noscript 元素是一种钝器。有时,可能会启用脚本,但由于某种原因,页面的脚本可能会失败。出于这个原因,通常最好避免使用 noscript,而是设计脚本以将页面从无脚本页面动态更改为脚本页面

    希望有帮助:)

    【讨论】:

    • 我只使用 noscript 来显示一条消息,指出用户不允许 JavaScript,并说他们应该。 :P
    • @RickyYoder 如果用户使用脚本拦截器,&lt;noscript&gt; 内容将不会显示。
    • 哈哈什么?这是一个脚本拦截器!为什么它会阻止拒绝编写脚本的 HTML 元素?此外,即使使用了这些拦截器,我怀疑是否有大量用户在使用它们,对吧?
    • @woofmeow Chrome 仍然将 innerHTML 引用为纯文本,所以也许它只是 Chrome 的东西?
    • @RickyYoder 你的意思是&lt;noscript&gt;?如果是这样,那么是的,因为它也与上下文有关。我的猜测是其他浏览器也应该是一样的。在别人身上试试。我想你只会得到纯文本。
    【解决方案3】:

    如果启用了 Javascript,则代码没有理由工作。 noscript 标签适用于未启用 JS 的浏览器/用户。 如果 javascript 被禁用,图像将会出现,否则它只需要一些时间来加载但不会显示。

    【讨论】:

    • 我想,但话又说回来,没有办法检查这个。我尝试在控制台中将
    • 我建议使用 JS if 语句,但没有任何意义.. 如果 JS 禁用它就会失败。
    • @RickyYoder 检查下面的答案可能有助于解释更多。
    • @woofmeow 很好的答案!不幸的是,我不太了解这个主题,无法安全地回答这个问题:) 无论如何做得很好。
    • 谢谢@Yotam。我们都在学习:)。希望它也对其他人有所帮助。
    【解决方案4】:

    &lt;noscript&gt; 元素内的内容将在脚本不受支持或在用户浏览器中被禁用时显示。

    【讨论】:

    • 这不能回答问题。 -1
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-18
    • 1970-01-01
    • 1970-01-01
    • 2013-01-21
    • 2019-12-02
    相关资源
    最近更新 更多