-4

嗨,我正在尝试一些 jQuery,但一点运气都没有。正在编写代码,什么没有,没有任何工作。所以我尝试了一些来自 w3schools 的 JQuery,但都没有成功。知道为什么我不能让它工作吗?

我在我的 html 的头部有这个

 <script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>  

还是不行。

感谢任何帮助谢谢米奇

<!DOCTYPE html>
<html>
<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js">
</script>
<script>
$(document).ready(function(){
$("button").click(function(){
$("#div1").fadeIn();
$("#div2").fadeIn("slow");
$("#div3").fadeIn(3000);
});
});
</script>
</head>

<body>
<p>Demonstrate fadeIn() with different parameters.</p>
<button>Click to fade in boxes</button>
<br><br>
<div id="div1" style="width:80px;height:80px;display:none;background-color:red;"></div>        <br>
<div id="div2" style="width:80px;height:80px;display:none;background-color:green;">    </div><br>
<div id="div3" style="width:80px;height:80px;display:none;background-color:blue;">  </div>

</body>
</html>

将其复制到记事本中,保存然后在chrome中运行,当我按下按钮时什么也没发生。

感谢所有帮助的人

4

3 回答 3

6

这里的问题是您用来加载 jQuery 的方案相对 url。由于我假设您正在本地加载 html 文件,因此您的页面方案是file://. 当您使用//作为源来加载 jQuery 时,它会在本地文件系统中查找名为ajax.googleapis.com. 替换//你的脚本标签https://来解决你的问题。

于 2013-01-10T18:12:52.247 回答
4

如果您只是将它粘贴到记事本中,保存并在浏览器中打开文件,则无法使用此代码找到 jQuery。

您必须:

  • 使用 HTTP 服务器提供您的文件(即不使用 访问它file://
  • 或将 jQuery 的 URL 更改为不使用协议相对 URL(以 开头的 URL //

最简单的解决方法是改变

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js">

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

但最重要的是始终使用本地 HTTP 服务器进行测试(在包括 Windows 在内的任何操作系统上安装 Apache 都非常容易)。有很多东西是你无法测试的file://,包括大多数跨域 ajax 操作。

于 2013-01-10T18:11:35.287 回答
1

改变

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>

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

问题是//ajax.googleapis.com用于避免不同协议(http/https)的问题。浏览器将添加用于页面的协议。当您从硬盘驱动器上的文件打开 HTML 时,将使用 file:// 协议。并且浏览器尝试使用 加载 jquery file://ajax.googleapis.com,但这不起作用,因为您ajax.googleapis.com的硬盘上没有文件夹。因此,只需明确指定 jquery 的协议

于 2013-01-10T18:11:44.947 回答