相关疑难解决方法(0)

HTML <head>和<body>标签之间有什么区别?

HEAD标签和BODY标签有什么区别?

大多数HTML书籍只是"简要"提及<head><body>标签......但它们只是快速消失.

它们会影响浏览器呈现网页的方式吗?

此外,它们是否会影响javascripts的运行顺序?

(我的意思是,如果我在<head>标签内部有一个javascript ,它会在<body>标签内的另一个javascript中运行吗?即使<body>是在BEFORE之前来的<head>?)

这太令人困惑 - 我从来没有使用过头部/身体标签,但我从来没有遇到任何麻烦.但在阅读Jquery教程时,我看到人们建议将一些代码放在里面<head>,其他<body>代码放在标签内.

谢谢!!!

html javascript

21
推荐指数
3
解决办法
5万
查看次数

外部样式表是否在HTML之前加载?

如果我的<head></head>HTML页面部分中包含外部样式表,它们是否会在HTML之前加载并立即应用于渲染?让我介绍一下我的具体用例.

外部styles.css文件:

form label {
    display: none;
}
Run Code Online (Sandbox Code Playgroud)

包含表格的页面:

<head>
    <link rel="stylesheet" href="styles.css" type="text/css" />
</head>
<form action="process.php" method="post">
    <label for="name">Name</label>
    <input type="text" id="name" name="name" />
</form>
Run Code Online (Sandbox Code Playgroud)

我可以确信标签在页面加载时是不可见的(由于CSS下载没有闪烁)吗?

否则,我可以内联添加样式属性,但这可能是维护的噩梦.

html css rendering order-of-execution

17
推荐指数
2
解决办法
7179
查看次数

现代浏览器是并行还是按顺序加载脚本?

我评价一个脚本加载优化现有资源,但我readed像一些文章这个,是指直到这个顺序脚本加载阶段完成旧的浏览器阻止其他下载.我检查Modernizr(yepnope.js),headjs和ControlJs作为候选人.但是,它是否需要在现代浏览器中使用此工具进行并行脚本加载?

javascript loading modernizr

15
推荐指数
1
解决办法
8017
查看次数

HTML页面中元素的加载,呈现和执行顺序是什么?

我发现这个漂亮的邮递kirupa.com,但我想在负荷,渲染和DOM一样,脚本,CSS,图片,iFrame等元素的执行深为了解

到现在为止我已理解下一个订单:

  1. DOM
  2. JS(我猜是无关紧要的JS是内联的还是外部的,如果它是外部的,我猜DOM加载被中断,直到JS被加载,渲染和执行)
  3. 内部CSS?(或者它是一起渲染DOM负载.)
  4. 外部CSS
  5. 外部图像

根据文章'虽然外部样式表不会被加载,但内联和外部脚本都会被加载.但根据MDM '样式表加载块脚本执行'.因此首先加载脚本,但只有在所有css可用后才执行它们?

我可以认为订单取决于浏览器的实现,还是有任何标准可以做到这一点?

有些专家会告诉我们正确的订单吗?

提前致谢!

html javascript css definition

11
推荐指数
1
解决办法
3234
查看次数

jquery可以加入的最早和最新事件是什么?

我写了一个小插件来获取页面加载/渲染时间.它收集$(document).ready的完成时间,我已经把代码片段收集在<title>标签之后的开始时间.

我希望这不那么突兀,所以似乎应该有一个早于.ready的事件,我可以在那里收集最早可测量的页面开始时间.

这是目前突兀的javascript

<title></title>
<script type="text/javascript">
    var startTime = (new Date()).getTime();
</script>
Run Code Online (Sandbox Code Playgroud)

这是插件:

(function ($) {

    $(document).ready(function () {
        var endTime = (new Date()).getTime();
        var millisecondsLoading = endTime - startTime;

        $.get('hicmah.ashx?duration=' + millisecondsLoading, function (data) {
        });
    });

})(jQuery);
Run Code Online (Sandbox Code Playgroud)

javascript jquery

8
推荐指数
1
解决办法
1796
查看次数

Javascript加载背景图像异步

是否可以异步加载背景图像?

我已经看到很多jQuery插件以异步方式加载普通图像,但我无法找到是否可以预加载/异步加载背景图像.

编辑

我澄清了我的问题.我一直在这个测试网站http://mentalfaps.com/上工作 .背景图像是从一组图像中随机加载的,这些图像每小时由一个计时工作刷新(在flickr目录上随机拍摄图像).

主机现在是自由和缓慢的,因此背景图像需要一些时间来加载.

第一个叠加层(带有PNG透明mentalfaps徽标的叠加层)和宽度的定位由jQuery(document).readycostruct中创建的函数调节.

如果您尝试多次刷新页面,右侧叠加div的宽度为0(因此您在布局中看到"洞")

以下是设置我的立场的方法:

function setPositions(){
    var oH = $('#overlay-header');
    var overlayHeaderOffset = oH.offset();
    var overlayRightWidth = $(window).width() - (overlayHeaderOffset.left + oH.width());
    if (overlayRightWidth >= 0) {
        $('#overlay-right').width(overlayRightWidth);
    } else {
        $('#overlay-right').width(0);
    }
    var lW =  $('#loader-wrapper');
    lW.offset({
        left: (overlayHeaderOffset.left + oH.width() - lW.width())
    });
}
Run Code Online (Sandbox Code Playgroud)

问题是$(window).width()低于有效窗口宽度!所以检查失败并且脚本适用$('#overlay-right').width(0);

有任何想法吗?

javascript jquery html5 jquery-ui css3

6
推荐指数
2
解决办法
1万
查看次数

浏览器具有不同位置的脚本和链接标记的不同渲染行为

我试图了解HTML在浏览器中的屏幕上呈现的时间.

我读了这个SO答案,并尝试了一些用例,我观察到一些不适合链接中共享的模型的东西,
我似乎也找不到一致的观察思维模型.

什么是适合所讨论案例的浏览器呈现顺序?


案例A: 图像A. 在此输入图像描述

  1. 当HTML解析器到达M1时,显示M1.
  2. 然后解析器到达脚本标记它等待js文件下载和解析.
  3. 然后解析器到达M3,显示M3.

案例A与大多数答案中描述的顺序不一致.Huray!让我们继续.

案例B: 图像-B 在此输入图像描述

  1. HTML解析器到达M1,M1不显示在CASE A中
  2. HTML解析器到达链接标记,它等待css下载和解析.
  3. 显示M1和M2,因此在渲染M1之前等待样式表下载.
  4. 然后解析器到达脚本标记它等待js文件下载和解析.
  5. 然后解析器到达M3,显示M3.

所以Case-B显示它没有呈现M1,它在渲染之前等待CSS下载. 因此渲染器可能需要在渲染之前知道CSS.

案例:C 图像C.

在此输入图像描述

所以从案例B开始,我们假设渲染器可能需要知道CSS.
让我们看看案例C:

  1. HTML解析器到达M1,显示M1.它不应该显示,因为我们在B的情况下看到它应该等待css加载.
  2. 现在解析器到达脚本,它等待js下载和解析器.
  3. 显示M2,M3

编辑: 提出的思维模型解释了上述行为..(但需要审查/改进)

  1. Script 不是渲染器阻止标记
  2. link 是一个渲染器阻止标记
  3. 考虑到渲染器HTML解析器是两个线程.
  4. HTML解析器可以将内容发送到渲染器进行渲染.
  5. HTML解析器可以发送块信号renderer..to块渲染器来渲染的处理不当被渲染ATLEAST一次任何HTML.
  6. HTML解析器可以向渲染器发送解除阻塞信号.以解除渲染任何未呈现一次的HTML的渲染器.

通过上面的模型我们可以解释CASE B和CASE C:
CASE B说明:

  1. HTML解析器到达M1,M1被发送到渲染器.
  2. HTML解析器到达链接标记,解析器向渲染器发送阻塞信号.
  3. 渲染器在渲染M1之前,它有一个阻塞信号,因此M1不显示.
  4. HTML解析器完成链接标记解析(下载)并向呈现器发送解除阻塞信号,一旦接收到解锁信号,它就呈现M1.
  5. HTML解析器到达M2,M2发送到渲染器.
  6. HTML解析器到达脚本标记,因为脚本标记不是渲染器阻塞标记,渲染器可以自由渲染html.
  7. HTML解析器完成脚本标记的解析(下载).
  8. HTML解析器到达M3,M3发送到渲染器.

同样我们可以干运行CASE C,它完全适合上述模型.

我的模型是正确的还是有问题的?

javascript html5 dom rendering css3

6
推荐指数
1
解决办法
478
查看次数

警报在 html 加载之前执行

您好,我的问题是关于如何加载网页!这是我的代码:

<!DOCTYPE html>
<html>
<head>
<title>JavaScript</title> 
</head>
<body>
<h1>Waiting</h1>
<script type="text/javascript">
    alert("Why?");
</script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

我一生都无法弄清楚为什么在显示标题之前会运行警报。我的理解是,由于警报位于结束正文标记的正上方,因此它将是最后运行的内容。为什么页面在显示标题之前等待我关闭警报?

谢谢您的帮助!

编辑:我在 Firefox 而不是 chrome 中运行了这段代码,它按照我想要的方式工作 - 在警报运行之前首先显示标题。

html javascript

6
推荐指数
1
解决办法
2562
查看次数

包含在html页面中的Javascript文件 - 浏览器下面会发生什么?

我认为这可能是一个依赖浏览器的问题 - 假设我有10个Javascript文件和几个HTML页面.假设HTML pageA只需要JS1.js和JS3.js,类似HTML pageB需要JS4.js和JS1.js. 我想知道在所有HTML页面中包含所有10个javascript文件会有什么影响?它会直接与浏览器的内存消耗有关吗?

我特别使用YUI javascript库来解决这个问题.有几个组件,如数据表,事件,容器,日历,dom事件等,它们被包含的顺序似乎也很重要 - 例如dom-event js应该包含在其余部分之前才能工作.因此,为了避免所有这些混淆,我想到将所有这些js文件包含在一个包含在所有HTML页面中的头文件中.

我担心的是它可能导致的内存膨胀和性能问题.请提供相同的建议..

谢谢,-Keshav

html javascript performance yui

5
推荐指数
1
解决办法
1396
查看次数

JavaScript和CSS订单

我有一个HTML文件,链接到CSS文件和JavaScript文件.

首先执行JavaScript然后应用CSS,反之亦然?

有没有办法改变订单?

谢谢 !

html javascript css

4
推荐指数
2
解决办法
7206
查看次数

在html页面中首先加载哪些元素?

我想知道在打开网页时首先加载哪些元素(html标签,脚本,样式,图像)?

有谁能够帮我?提前致谢.

html html5 load pageload

4
推荐指数
2
解决办法
2万
查看次数

在 HTML 代码中的何处插入 JavaScript 库和 CSS?

我对 Web 开发不太陌生,当我在互联网上搜索其他主题时,我看到很多人将流行的 JS 库放在他们网站的不同位置。

例如:在该部分的最开头或开头插入 JS 库 <head> </head> 。(在加载任何 JS 代码或 CSS 文件之前)

例如:在 <head> </head> 部分的末尾插入 JS 库。(加载所有JS代码和CSS文件后)

例如:在 <body> </body> 部分的末尾插入 JS 库。(加载所有 JS 代码、文本、图像、视频、CSS 文件等后...)

所以我的问题是这样的。

将以下 JS 库、插件和 CSS 样式表插入(何处)到网页以获得最快的加载时间和其他优势的最佳实践是什么?- 请说明原因 -

JQuery 及其插件

引导3.js

Modernizr.js

Angular.js

还有另一个广泛使用的 JS 库,我在这里无法提及......

规范化.css

重置.css

bootstrap.css + 更多

谢谢..!

html javascript css jquery web

2
推荐指数
1
解决办法
6840
查看次数

&lt;script&gt; 块中定义的 JavaScript 函数是否可以被另一个 JS 函数访问?

我的 HTML 文件中有以下代码:

<script src = "js/create.js"></script>
<script>
    function show() {
              //some code here
    }
</script>
Run Code Online (Sandbox Code Playgroud)

在 JavaScript 文件 create.js 中,我想调用show()块中定义的函数,如下所示:

//File create.js
var a = show();
Run Code Online (Sandbox Code Playgroud)

那么show()文件 create.js 中的函数是否可以访问?

javascript scope

1
推荐指数
1
解决办法
7311
查看次数