2017-06-27 1 views
0

divをリンクタグ内にアニメーション表示しようとしています。「this」を使用してjQuery関数を使用してアンカーからdivにアクセスしようとしています

HTML:

<li><a href="#">INFO <div></div></a></li> 

私はと相互作用しているリンクのどちらを把握するので、同様にjQueryの機能を使用しています。

function slideMenu(e) { 

    if(e.type === "mouseover"){ 
    console.log("mouseover"); 
    //console.log(this > bgColor); 

    // TweenMax.to($(this > div) , 1, {height:200}); 
    } 
    else if(e.type === "mouseout"){ 
    console.log("mouseout"); 
    } 
    else if(e.type === "click"){ 
    console.log("click"); 
    } 

} 

$(".menu a").click(slideMenu); 

$(".menu a").mouseover(slideMenu); 

$(".menu a").mouseout(slideMenu); 

私はgreensockを使用して、アンカータグのdiv内部をつかむと高さを変更しようとしているが、それは私にそのdivタグへのアクセス権を与えていないようです。

+2

てみ' $(この).find( '>のdiv')を使用することができますか? – evolutionxbox

答えて

2

divがでバインドさ要素の子での親で.menuクラスを持っていることを確認してください$(this)
.find()を使用してターゲティングできます。

$("a").on("click",function(e){ 
 
    e.preventDefault(); 
 
    $(this).find("div").html("I'm here!"); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 

 
<ul> 
 
    <li><a href="#">INFO <div>Click me.</div></a></li> 
 
</ul>

0

@evolutionxboxがcommmentsに答えを入れ、使用:

$(this).find('> div') 

あなたは<a>要素

0

可能な場合は、単にそのdiv要素にIDを追加し、その方法を見つけることができます。

ない場合は、 `.children('div')

関連する問題