0

3枚の写真を重ね合わせて重ね合わせようとしています。「mouseenter」すると一番上の写真がフェードアウトし、「mouseleave」すると再び表示されます。私はその機能を働かせました。次に、「mouseenter」をクリックして2番目の写真を非表示にし、3番目の写真が表示されるようにしたいと考えています。その後、すべての写真が再表示され、マウスエンター、マウスリーブ、クリックの回数に関係なく、機能が引き続き機能するようにします。一番上の写真が消えて再表示され、クリックすると3番目の写真が表示されるように動作するようになりましたが、マウスを離すと最初の写真が表示され、もう一度マウスを入力しても何も起こりません。誰かが私がやりたいタスクを完了する方法を理解するのを手伝ってくれませんか? これまでのところ、これをHTMLとして持っています:

    <html>
<head>
<title>this is a title</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<script src="programs.js"></script>
<link rel="stylesheet" type="text/css" href="10_10.css">
</head>
<body>
    <div class="colosseum">
        <img class="colosseum" src="http://library.thinkquest.org/CR0210200/ancient_rome/colosseum3.jpg"/>
    </div>
    <div class="colosseumRest">
        <img class="colosseumRest" src="http://www.robinurton.com/history/ancient/rome/ColoAbove.jpg"/>
    </div>
    <div class="colosseumNow">
        <img class="colosseumNow" src="http://hbarbosahistorybuff.edublogs.org/files/2010/11/colosseum2-1lgbsp7.jpg"/>
    </div>

</body>

そして、これは私のCSSとして:

    .colosseumNow{
    min-width:400px;
    min-height:400px;
    max-width:400px;
    max-height:400px;
    margin-top:-300px;
    }
    .colosseumRest{
    min-width:400px;
    min-height:400px;
    max-width:400px;
    max-height:400px;
    margin-top:-200px;
    }
    .colosseum{
    min-width:400px;
    min-height:400px;
    max-width:400px;
    max-height:400px;
    postition:absolute;
    }

そして、これは私のjavascriptとして:

    $(document).ready(function(){
$('.colosseumNow').mouseenter(function(){
    $(this).fadeTo('slow',0);
});
$('.colosseumNow').mouseleave(function(){
    $(this).fadeTo('slow',1);
});
$('.colosseumNow').click(function(){
    $('.colosseumRest').fadeTo('slow',0);
});

    });
4

1 に答える 1

0

私が考えることができる簡単な方法は、親divを作成し、兄弟を使用してすべての子をフェードインまたはフェードアウトすることです

$(siblings).fadeTo('slow',1)

http://api.jquery.com/siblings/

于 2013-10-14T01:36:08.300 に答える