【问题标题】:Linking JQuery into my html将 JQuery 链接到我的 html 中
【发布时间】:2013-09-16 02:26:03
【问题描述】:

我试图在我的 html 中包含一个外部 jQuery 文件(第一次),但它不起作用,只是在没有 jquery 的情况下执行 html。 (css 工作正常)

这是html代码:

<!doctype html>
<head>
<link type="text/css" rel="stylesheet" href="stylesheet.css" />
</head>
<body>
  <script type="text/javascript" src="<script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js" />
  <script type="text/javascript" src="script.js"></script>
  <h1>Hello World!</h1>`
</body>
</html>

这是 script.js 中的 jquery 代码:

$(document).ready(function(){
   alert("it works");
});

是的,它们都在同一个文件夹中(实际上是保管箱文件夹,但我认为保管箱不会影响任何东西)

【问题讨论】:

  • 你在哪里读到这个script的源代码?仅在源代码中提供您的网址
  • 仅供参考:通常不自行关闭您的 script 标签 - 使用 &lt;script src="..."&gt;&lt;/script&gt; 而不是 &lt;script src="..." /&gt;。我相信自关闭脚本标签除了旧的 IE(IE7 可能?)之外的任何地方都可以使用,但人们通常仍然不这样做。
  • 如果你想想你做了什么,你最终会陷入无限循环,因为你会把脚本放在每个src
  • 您能做的最好的事情就是通过参考您使用的任何浏览器的开发人员工具来学习调试此错误。 Quick google 将帮助您开始使用开发者工具。

标签: javascript jquery html


【解决方案1】:
<script type="text/javascript" src="<script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js" />
<script type="text/javascript" src="script.js"></script>

首先,删除&lt;script&gt; 标记中多余的src="&lt;script。也可以用&lt;/script&gt; 标签“关闭”它...

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script type="text/javascript" src="script.js"></script>

其次,将包含的脚本放在&lt;body&gt; 部分的结尾,就在&lt;/body&gt; 标记之前:

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

或者,在您的 &lt;head&gt; 部分内的任何位置:

    ....
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
    <script type="text/javascript" src="script.js"></script>
    ....
</head>

最后,确保 URL 路径适合您的版本:

http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js

链接到完整版总是很明智的。否则,如果 URL 处的代码更新,您的网站可能会突然中断而没有警告。


如果您按照上述说明进行更改并将&lt;title&gt; 元素添加到您的头部...

<head>
    <title>Title</title>
    ....

...然后您的代码将通过 HTML 验证。

http://validator.w3.org/check

【讨论】:

  • 最后,链接到一个完整的版本号:http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js
  • 自行关闭脚本?真的吗?那是完全无效的 HTML。 HTML 中不存在自动关闭功能。大多数(如果不是全部)HTML 解析器会将脚本后面的所有内容放入脚本本身,因为您没有关闭它。
  • @FabrícioMatté,我错过了他的 doctype... 的错已更正,现在只要 OP 在 &lt;head&gt; 中包含 &lt;title&gt; 元素,它就会通过 HTML validation
  • 没问题,现在 +1(我自己会更正它,但我不喜欢从根本上改变别人的答案)。
【解决方案2】:

这是一个错字吗?您的 src=" "

中有一个额外的 &lt;script
<script type="text/javascript" src="<script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js" />

应该是

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>

【讨论】:

  • 只是一个提示,如果你用`(反引号)包围一段代码,它将使它成为一个代码sn-p。所以你可以有 &lt;script 而不是 "(
【解决方案3】:

改成:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>

您在 src 中有完整的脚本,这是错误的。

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-01-24
  • 2012-12-15
  • 1970-01-01
  • 2018-03-18
相关资源
最近更新 更多