gpt4 book ai didi

javascript - 为什么我的 javascript alert() 代码在

html 标记之前运行?

转载 作者:行者123 更新时间:2023-11-28 04:27:30 25 4
gpt4 key购买 nike

<h1>Paragraph 1</h1>

<script type="text/javascript">
alert ("section one bottom");
</script>

我在 <h1> 之后添加了我的脚本标记但仍然是<h1>正在追我的 alert()在javascript中。为什么?你能解释一下吗?我是网络开发的初学者。

最佳答案

h1 元素将在 alert 发生之前存在,但它可能尚未呈现(实际上在视觉上,嗯,可见)。 Web 浏览器上的 JavaScript 每个窗口有一个主 UI 线程¹(有时多个窗口共享一个线程)。在大多数浏览器中,该 UI 线程通常也用于渲染。 alert 和其他 1990 年代的函数(promptconfirm)不同寻常,因为它们完全停止窗口的主 UI 线程并等待用户做某事。当显示 alert 时,大多数浏览器甚至无法呈现。

一般来说,避免 alertconfirmprompt — 有几个原因:笨拙,以及浏览器正在慢慢地改变其工作方式(尤其是当标签/窗口不活动的情况下),这意味着它们不再总是停止the-ui-world,以不同于浏览器到浏览器。


¹ 这并不 意味着 JavaScript 是单线程的。 JavaScript 本身对线程的描述相对较少,主要留给宿主环境(尽管最近的规范已经开始改变这一点)。在浏览器上,您可以通过 web workers 拥有多个线程;这些天,他们甚至可以share memory (在大多数浏览器中暂时禁用,但很快就会再次启用)。

关于javascript - 为什么我的 javascript alert() 代码在 <h1> html 标记之前运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53499153/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com