0

考虑到我今天刚开始学习它,我对 Jquery 还是很陌生。但是,我在让我的 jquery 程序工作时遇到问题:

这是CSS:

p {
    opacity: 0;
}

这是jQuery:

$(document).ready(function() {
    $("p").delay(1000).fadeTo("fast", 100);
});

和 HTML:

<!DOCTYPE html>
<html>
    <head>
        <title>PP1114</title>
        <script type="text/javascript" src="PP1114.js"></script>
        <link rel="stylesheet" type="text/css" href="PP1114.css">
            <!-- these are both links to documents on my computer-->
    </head>
    <body>
        <p>Done!</p>
    </body>
</html>

非常简单的程序。我希望 p 元素在页面打开后一秒钟内消失,但我总是以空白页结束。在 Google Chrome 的检查元素工具中,我查看了 html 文件是否正确地检索了 css 和 jquery 文件,确实如此。我知道我的 css 文件正在运行,因此我认为问题可能与 Chrome 读取 Jquery 程序有关。我做了很多故障排除,但似乎无法修复它。有什么问题?

4

3 回答 3

3

您尚未包含jquery.js在您的页面中。在另一个之前添加以下<script>内容<head>

<script type="text/javascript" src="http://code.jquery.com/jquery-1.10.0.js"></script>

或者在 Google 的 CDN 中包含该版本:

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

或者包括存储在您自己的 Web 服务器上的版本。

然后你的 JS 就可以正常工作了,尽管第二个参数fadeTo()应该是1而不是100: (opacity不是百分比)。

请注意,如果您在浏览器的控制台(在 Chrome 中您可以使用 F12 或 ctrl-shift-I 打开)中查找错误,您会看到以下错误:

Uncaught ReferenceError: $ is not defined

...这是一个非常强烈的暗示 jQuery 不可用。

演示:http: //jsbin.com/isutim/1/edit

于 2013-06-15T06:16:06.963 回答
1

您是否包含了 jquery-1.9.1.js 文件?您也可以从 jquery.org 中包含它。从您的代码中我猜这可能是导致问题的原因

于 2013-06-15T06:17:41.980 回答
0

Javascript 的内置 setTimeout() 应该在 Chrome 中工作。

window.setTimeout(function () { $("p").fadeTo("fast", 100); }, 1000);
于 2013-06-15T06:12:07.687 回答