相关疑难解决方法(0)

将JavaScript放在HTML文件中的哪个位置?

假设我有一个相当庞大的JavaScript文件,打包到大约100kb左右.通过文件我的意思是它是一个外部文件,将在via中链接<script src="...">,而不是粘贴到HTML本身.

哪个是放在HTML中的最佳位置?

<html>
<head>
    <!-- here? -->
    <link rel="stylesheet" href="stylez.css" type="text/css" />
    <!-- here? -->
</head>
<body>
    <!-- here? -->
    <p>All the page content ...</p>
    <!-- or here? -->
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

每个选项之间是否存在功能差异?

html javascript optimization

202
推荐指数
3
解决办法
12万
查看次数

将<script>标记放在</ body>标记之后是错误的吗?

将script标记放在body(</body>)的结束标记之后是多么错误.?

<html>
  ....
  <body>
     ....
  </body>
  <script type="text/javascript" src="theJs.js"></script>
</html>
Run Code Online (Sandbox Code Playgroud)

html javascript

202
推荐指数
5
解决办法
11万
查看次数

如何将JavaScript文件链接到HTML文件?

如何正确地将JavaScript文件链接到HTML文档?

其次,如何在JavaScript文件中使用jQuery?

html javascript jquery

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

我应该在身体或html的头部写脚本吗?

我已经看到了两种方式,两种方式的实现工作只是结构有点不同.根据您的经验,哪个更好,为什么?

html javascript

136
推荐指数
3
解决办法
16万
查看次数

为什么我的javascript中的document.body为null?

这是我的简短HTML文档.

为什么Chrome控制台会注意到此错误:

"未捕获的TypeError:无法调用方法'appendChild'的null"?

<html>
<head>
    <title>Javascript Tests</title>

    <script type="text/javascript">

        var mySpan = document.createElement("span");
        mySpan.innerHTML = "This is my span!";

        mySpan.style.color = "red";
        document.body.appendChild(mySpan);

        alert("Why does the span change after this alert? Not before?");

    </script>
</head>
<body>

</body>
</html>
Run Code Online (Sandbox Code Playgroud)

javascript google-chrome

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

不引人注目的JavaScript:HTML代码顶部或底部的<script>?

我最近阅读了雅虎宣言加速你的网站的最佳实践.他们建议我们尽可能将JavaScript包含在HTML代码的底部.

但究竟何时何地?

我们应该在收盘前</html>还是之后放?最重要的是,我们什么时候应该把它放在这个<head>部分?

javascript optimization performance coding-style

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

将JavaScript嵌入HTML主体是不好的做法?

我正在研究的团队已经养成了<script>在HTML页面正文中随机位置使用标记的习惯.例如:

<html>
    <head></head>
    <body>
        <div id="some-div">
            <script type="text/javascript">//some javascript here</script>
        </div>
    </body>
</html>
Run Code Online (Sandbox Code Playgroud)

我以前没见过这个.它似乎适用于我测试过的少数浏览器.但据我所知,将脚本标签放在这样的地方是无效的.

我错了吗?我们在这样的div标签中放置脚本标签有多糟糕?我应该注意哪些浏览器兼容性问题?

html javascript

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

Google Analytics是否有性能开销?

Google Analytics在多大程度上会影响效果?

我正在寻找以下内容:

  • 基准(包括响应时间/页面加载时间等)
  • 链接或结果与类似的基准

在您的网站上测试Google Analytics(GA)的一种(可能的)方法:

  1. 从您自己的服务器提供ga.js(Google AnalyticsJavaScript文件).
  2. 从Google Daily(测试1)和Weekly(测试2)更新.

我很想知道这会如何减少客户端Web服务器和GA服务器之间的通信.

有没有人进行过这些测试?如果是这样,你能提供你的结果吗?如果没有,是否有人有更好的方法来测试使用GA的性能损失(或缺乏)?

performance benchmarking google-analytics

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

在<head>中订购元素的最佳做法是什么?

可以按任何顺序使用任何东西?放置<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">之前很重要<title>

这是最常用的,是最好的方法吗?

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
        "http://www.w3.org/TR/html4/loose.dtd">

<html lang="en">

<head>
    <meta http-equiv="content-type" content="text/html; charset=utf-8">
    <title>Title Goes Here</title>
    <link rel="stylesheet" href="http://sstatic.net/so/all.css?v=5912">
    <link rel="shortcut icon" href="http://sstatic.net/so/favicon.ico">
     <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<script type="text/javascript">
    $(function() {

        $("#wmd-input").focus();
        $("#title").focus();
        $("#revisions-list").change(function() { window.location = '/posts/1987065/edit/' + $(this).val(); });

    });        
</script>


</head>

<body>
<p>This is my web page</p>

    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/mootools.js"></script>
</body>

</html>
Run Code Online (Sandbox Code Playgroud)

这个网站http://stackoverflow.com没有任何编码和<meta>

我使用一个具有SEO组件的CMS,它<meta>在所有js和css之后为SEO 添加了每个组件.文件.可以在<head>影响文档兼容性和编码中允许的任何顺序放置任何元素吗?

html css xhtml w3c

80
推荐指数
6
解决办法
5万
查看次数

可以推迟加载jQuery吗?

让我们面对现实吧,jQuery/jQuery-ui是一个重载下载.

Google建议延迟加载JavaScript以加快初始呈现速度.我的页面使用jQuery来设置一些位于页面下方的选项卡(主要是在初始视图之外),我想将jQuery推迟到页面呈现之后.

Google的延迟代码在页面加载后通过挂钩到正文onLoad事件为DOM添加标记:

<script type="text/javascript">

 // Add a script element as a child of the body
 function downloadJSAtOnload() {
 var element = document.createElement("script");
 element.src = "deferredfunctions.js";
 document.body.appendChild(element);
 }

 // Check for browser support of event handling capability
 if (window.addEventListener)
 window.addEventListener("load", downloadJSAtOnload, false);
 else if (window.attachEvent)
 window.attachEvent("onload", downloadJSAtOnload);
 else window.onload = downloadJSAtOnload;

</script>
Run Code Online (Sandbox Code Playgroud)

我想以这种方式推迟加载jQuery,但是当我尝试它时,我的jQuery代码无法找到jQuery(我不是完全出乎意料):

$(document).ready(function() {
    $("#tabs").tabs();
});
Run Code Online (Sandbox Code Playgroud)

所以,似乎我需要找到一种方法来推迟执行jQuery代码,直到加载jQuery.如何检测添加的标签是否已完成加载和解析?

作为推论,似乎异步加载也可能包含答案.

有什么想法吗?

javascript jquery pagespeed

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