Próbuję animować div wewnątrz znacznika łącza.

HTML:

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

Używam funkcji jQuery, jakby dowiedzieć się, które z linków jest interakcji.

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);

Próbuję użyć Greensock i chwyć div wewnątrz znacznika kotwicy i zmień wysokość, ale wydaje się, że nie daje mi dostępu do tego div znacznika.

0
icekomo 27 czerwiec 2017, 18:17

3 odpowiedzi

Najlepsza odpowiedź

div jest dzieckiem elementu wiązanego z $(this).
Możesz użyć .find(), aby go skierować.

$("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>
2
Louys Patrice Bessette 27 czerwiec 2017, 15:35

Jeśli to możliwe, możesz po prostu dodać identyfikator do tego div i znaleźć to w ten sposób.

Jeśli nie, możesz użyć .children('div')

0
user7467594user7467594 27 czerwiec 2017, 15:31

@volutionXbox Umieść odpowiedź w komentarzach, użyj:

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

Upewnij się, że masz klasę .menu w elemencie {x1}}

0
OrcusZ 27 czerwiec 2017, 15:26