jQuery fadeOut和fadeIn

时间:2014-01-11 22:43:04

标签: javascript jquery html debugging

在点击按钮时,我无法使用jQuery来淡化()一个图像和另一个fadeIn()。

为了简单起见,这里只是需要受影响的部分的HTML:

<!DOCTYPE html>
<html>
    <head>
        <link rel='stylesheet' href='style.css'/>
        <script type='text/javascript' src='script.js'></script>
    </head>
    <body>
        <div id="landing-page">
            <div id="call-to-action">
                <img src="https://scontent-b-lga.xx.fbcdn.net/hphotos-prn1/v/1608452_3821343707689_2110853534_n.jpg?oh=ab5ebfd5dce574e97a43e9a7c0739583&oe=52D0F2AC" id="learn-button"/>
            </div>
            <img src="https://scontent-b-lga.xx.fbcdn.net/hphotos-prn1/v/1551908_3821359708089_1101636385_o.jpg?oh=aa19a9ac5f5b5e4f3cf704858482803d&oe=52D11726"id="line"/>
        </div>
    </div>
</body>

这是jQuery:

$(document).ready(function() {
    $("#call-to-action").click(function() {
        $("#landing-page").fadeOut("slow");
        $("#more-info").fadeIn("slow");
    });
});

单击#call-to-action按钮时,#landing-page div应为fadeOut,#more-info图像应为fadeIn。它不起作用。实际上,我输入的任何jQuery命令都不适用于其他div。我相信我的jQuery插件有问题,或者我错过了对jquery表的一些引用。

2 个答案:

答案 0 :(得分:1)

  

&#34;或者我错过了对jquery工作表的一些引用。&#34;

是。您显示的代码不包含jquery.js文件。如果你的项目中有jquery.js的副本,那么在之前立即在<head>部分添加它 其他JS包括:

<script type='text/javascript' src='jquery.js'></script>

否则,您可以从CDN引用副本:

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

(根据您选择的CDN支持,指定您要使用的jquery版本;我已建议与旧IE兼容的最新版本。)

另外你可能想隐藏第二个img开始,并且在第一个img完成淡入淡出之前不会淡入它 - 如果你将一个函数作为第二个参数传递给.fadeOut()它将在之后被调用淡出结束:

$(document).ready(function() {
  $("#more-info").hide();
  $("#call-to-action").click(function() {
    $("#landing-page").fadeOut("slow", function(){
        $("#more-info").fadeIn("slow");
    });
  });    
});

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

答案 1 :(得分:0)

您错过了包含jquery库。您可以从谷歌CDN中包含它。从你的问题我明白,点击一个按钮你想要div淡入和淡出。请参考以下演示来执行此操作。

演示:http://jsbin.com/IGAJeqew/2/edit