Javascript 我有什么误解吗?

Javascript 我有什么误解吗?,javascript,jquery,html,iframe,Javascript,Jquery,Html,Iframe,我做了一个简单的**** 我有10个元素 在第一个元素之后,我有一个脚本: 它使用SRc创建了10个iframe,并将它们附加到第一个元素 for (var i=0;i<10;i++) { var t=$("<iframe />").css({'width':'50px','height':'50px'}).attr('src','http://www.msdn.com'); $("#hello").append(t); }

我做了一个简单的****

我有10个元素

在第一个元素之后,我有一个脚本: 它使用SRc创建了10个iframe,并将它们附加到第一个元素

for (var i=0;i<10;i++)
     {
       var t=$("<iframe />").css({'width':'50px','height':'50px'}).attr('src','http://www.msdn.com');
        $("#hello").append(t);
      }
奇怪,但我确实看到了其他9个,在完整加载整个iFrame之前

在页面元素中添加新元素iFrame是否应该阻止随后的html呈现? 另外,正如我们所知,javascript是单线程的

不,JavaScript是单线程的,但这并不意味着浏览器不能同时启动多个HTTP请求。考虑到图像也通过并发HTTP请求加载。 向文档中添加一个会启动一个HTTP请求,但由于JavaScript是单线程的,因此代码不会等待该请求完成。

否。JavaScript是单线程的,但这并不意味着浏览器不能同时启动多个HTTP请求。考虑到图像也通过并发HTTP请求加载。
向文档中添加一个会启动一个HTTP请求,但由于JavaScript是单线程的,因此代码不会等待该请求完成。

它会启动一个请求,但不会等待?对于非线程环境来说,这听起来很奇怪。此外,没有任何东西表明整个浏览器是单线程的。单个页面上的JavaScript环境实际上是单线程的,但这与浏览器处理HTTP请求的方式无关。否。HTTP请求已启动,但这是一个网络操作-浏览器进程不会等待响应。当响应返回时,浏览器将处理它。这就像Node.js中的工作原理一样。@RoyiNamir想一想AJAX是如何工作的:您启动HTTP请求,但处理过程继续进行而不等待响应。它启动请求但不等待?对于非线程环境来说,这听起来很奇怪。此外,没有任何东西表明整个浏览器是单线程的。单个页面上的JavaScript环境实际上是单线程的,但这与浏览器处理HTTP请求的方式无关。否。HTTP请求已启动,但这是一个网络操作-浏览器进程不会等待响应。当响应返回时,浏览器将处理它。这就像Node.js中的工作原理一样。@RoyiNamir思考AJAX是如何工作的:您启动HTTP请求,但处理过程继续进行,而不等待响应。