2012-12-01 32 views
2

如何更改jQuery中的代碼,這些代碼將被引用到html中的上述項目中?jQuery中的引用?

HTML代碼如下:

<div class="dramer"> 
    <ul> 
     <li> </li> 
     <li> <a class="shares" href="#"> Click </a> </li> 
     <li> </li> 
     <li> </li> 
    </ul> 

    <div class="drops"> </div> 

</div> 

jQuery中的代碼:

$('a.shares').click(function (event) { 
    event.preventDefault(); 
    event.stopPropagation(); 
    $(this).next(."drops").slideToggle(400);     
}); 

在jQuery的功能是用來顯示和隱藏DIV位於夠不着的地方<li><ul>

如何修改代碼來隱藏jQuery並顯示div?

+0

你能說清楚你的問題嗎?我不明白它是什麼。 –

+0

我真的不明白。你的意思是你想隱藏div鏈接點擊 –

回答

1

$ (this). next(. "drops"). slideToggle (400);

$(this).closest('.dramer').children('.drops').slideToggle(400); 
+0

工作只是關於我正在尋找的感謝致謝:) – BlackQNX

2

目標直接

$(".drops").slideToggle(400); 

如果你需要它是情境感知,這樣的事情可能會奏效

$(this).closest(".dramer").find(".drops").slideToggle(400); 
+2

需要刪除'this'附近的引號,以及前面的空格('在第一個和第二個。 – Sampson

+1

@JonathanSampson謝謝,修正了錯別字 – anderssonola

+0

+1對於第二個建議 – Sampson

0

如何試圖

$ ('a.shares'). click (function (event) { 
     event.preventDefault(); 
     event.stopPropagation(); 
     $(this).parent(".dramer").children(".drops").slideToggle(400); 
    });  
0

你應該去到那個被.shares.drops之間共享的最近的祖先,然後從那裏找到.drops

$(".shares").on("click", toggleDrops); 

function toggleDrops (event) { 
    $(this).closest(".dramer").find(".drops").slideToggle(400); 
    return false; 
} 
0

我不知道我明白你什麼。如果你的意思是你想隱藏你的孩子的div,你可以試試這個:

$ ('a.shares'). click (function (event) { 
    event.preventDefault(); 
    event.stopPropagation(); 
    $(".drops").slideToggle (400); 
});