相关疑难解决方法(0)

399
推荐指数
8
解决办法
18万
查看次数

242
推荐指数
6
解决办法
13万
查看次数

页面加载完成后执行javascript

我有一个html页面,其中包含一些预呈现的内容和一些未呈现的内容.我想立即显示预渲染的内容,然后开始渲染剩余的内容.我没有使用jQuery.

请参阅以下代码段.我曾经尝试这样做的各种方式,包括结束标记之前注入我的脚本,并提供我的脚本来填充DOM的回调window.onload,document.body.onloaddocument.addEventListener('DOMContentLoaded').在每种情况下,在呈现其余内容之前,页面不显示预呈现的内容.

<html><head></head>
  <body>
    <header>What it is, my doge?</header>
    <div id="main"></div>
    <script>
      var main = document.getElementById('main');
      for (var i = 0; i < 500; i++)
        main.innerText += new Date();
    </script>
  </body>
</html>
Run Code Online (Sandbox Code Playgroud)

<html><head></head>
  <body>
    <header>What it is, my doge?</header>
    <div id="main"></div>
    <script>
      var main = document.getElementById('main');
      document.body.onload = function() {
        for (var i = 0; i < 500; i++)
          main.innerText += new Date();
      };
    </script>
  </body>
</html>
Run Code Online (Sandbox Code Playgroud)

<html><head></head>
      <body>
        <header>What it is, …
Run Code Online (Sandbox Code Playgroud)

html javascript dom

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

Javascript:检测窗口何时完全加载

我有一个脚本,可以在网页生命周期的任何阶段加载.加载脚本时,它必须运行initialize()方法.

我希望这个函数在"onload"事件上运行,但是我不能确定页面还没有加载,即"onload"还没有被解雇.

理想情况下,我的脚本看起来像这样:

var _initialize = function() { ...};

if(window.LOADED)
    _initialize();
else if (window.addEventListener)
    window.addEventListener('load', _initialize, false); 
else if (window.attachEvent)
    window.attachEvent('onload', _initialize);
Run Code Online (Sandbox Code Playgroud)

有没有这样的window.LOADED或document.LOADED变量或类似的东西?

谢谢,谢恩

javascript events load

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

jquery文件在Javascript中等效?

我想把我的javascript代码放在head而不是body中,但是由于head在html文档中的body部分之前加载,我的代码变得无用,因为所有选择器都变得未定义.

在jquery我可以$(document).ready用来克服这个问题,但是我不想使用jquery,我想知道在javascript中是否有这个解决方案.

我试过了:

if(document.readyState === "complete") {/*my javascript code */}
Run Code Online (Sandbox Code Playgroud)

window.onload = function(){/*my javascript code */}
Run Code Online (Sandbox Code Playgroud)

但两者都不起作用,有什么建议吗?提前致谢.

HTML:

<div id="section" onClick="shout()">test</div>
Run Code Online (Sandbox Code Playgroud)

JAVASCRIPT:

window.onload=function(){
function shout(){
var str = document.getElementById("section").innerHTML;
alert(str);
}
}
Run Code Online (Sandbox Code Playgroud)

javascript

6
推荐指数
0
解决办法
3万
查看次数

html/js:单页应用程序中是否有“页面加载”事件?

我正在构建一个单页应用程序,它通过 ajax(预)加载不同页面的内容。当用户导航时,应用程序用新内容(ajax 数据)替换特定标签内的旧内容。这个新内容可以是例如包含文本和图像的文章。

我的问题是:在替换内容并加载新内容的每个外部资源后,是否会触发事件?就像“DOM 准备好”来刷新 DOM?

html javascript singlepage

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

页面加载后获取css文件

我正在关注一个爱好项目的css文件:

  • normalize.css
  • main.css
  • viewports.css
  • bigFile.css

现在normalize.cssmain.cssviewports.css是在整个网站的每次访问页面上加载的3个文件。但是bigFile.css包含许多在网站内部页面中使用的CSS样式。现在,我将这些文件加载​​到首页中,index.html如下所示:

<link rel="stylesheet" href="css/normalize.min.css">
<link rel="stylesheet" href="css/main.css">
<link href='//fonts.googleapis.com/css?family=Open+Sans:400,300,600' rel='stylesheet' type='text/css'>
Run Code Online (Sandbox Code Playgroud)

我已合并viewports.css到内部main.css,当前文件大小很好。我无法合并,bigFile.css因为那main.css会很大,浏览器将等待渲染它。还要注意,我将使用github页面,它将过期标头设置为几乎10分钟,从而使缓存状态对我不利。并假设用户最有可能导航到下一页。

bigfile.css页面成功加载后,有什么方法可以加载,从而节省了下一页加载的时间。我不介意使用js解决方案,直到它在非js网站上全面恢复(例如,直到用户实际导航到下一页才加载它们)。另外,对于这样的小任务,我也不喜欢jquery。谢谢!

html javascript css css3

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

标签 统计

javascript ×7

html ×3

browser ×1

css ×1

css3 ×1

dom ×1

events ×1

jquery ×1

load ×1

singlepage ×1