1

もともとdivをクリックすると、キャプションがスライドアップしましたが、同じクラスの他のすべてのdivにも影響を与えました。クリックされているdivに影響を与えたいだけです。そのため、以下のオプションを試しましたが、まったく機能しませんでした。どんな助けでも大歓迎です。ありがとうございました!

$(document).ready(function() {
    $(".bubble").click(function() {
        $(this).find('.slide-up').slideToggle(1000);              
    });

});

<div class="property">  
<div class="left-column">       
    <img src="<?php bloginfo('template_directory'); ?>/images/test-image.jpg" width="670px" height="450px" />       
    <div class="bubble"></div>      
    <div class="slide-up"><h1>CHARM? LOCATION? AWESOME? CHECK, CHECK AND CHECK</h1></div>   
</div>

4

4 に答える 4

3

試す:

$(document).ready(function() {
    $(".bubble").click(function() {
        $(this).next('.slide-up').slideToggle(1000);              
    });

});
于 2013-06-25T16:24:56.797 に答える
2

あなたのdivはその内部ではなく隣にあるので、使用する必要があります.next slide-upbubble

$(".bubble").click(function() {
        $(this).next('.slide-up').slideToggle(1000);              
});
于 2013-06-25T16:26:35.223 に答える
1

イベントを使用して、必要なものを取得します。

$(".bubble").click(function(e) {
    $(e.target).find('.slide-up').slideToggle(1000);              
});
于 2013-06-25T16:14:19.230 に答える
0

多くの「.bubble」要素がある場合。$('.bubbles')要素の配列を返します。クリック イベントがトリガーされると、すべてのバブルに対して実行されます。

あなたがする必要があるのは、各要素を繰り返し処理し、次を使用して独自のクリックイベントを割り当てることです:

$(".bubble").each(function(){
    $(this).click(function() {
        $(this).find('.slide-up').slideToggle(1000);              
    })
});

http://jsfiddle.net/CGWGreen/acGLX/に実際の例を作成しました。乾杯GW

于 2013-06-25T16:27:03.663 に答える