SORU
20 EYLÜL 2010, PAZARTESİ


Bir öğe olmadığını kontrol edin bir ebeveyn bir çocuk

Aşağıdaki kodu var.

<html>
<head>
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
</head>

<div id="hello">Hello <div>Child-Of-Hello</div></div>
<br />
<div id="goodbye">Goodbye <div>Child-Of-Goodbye</div></div>

<script type="text/javascript">
<!--
function fun(evt) {
    var target = $(evt.target);    
    if ($('div#hello').parents(target).length) {
        alert('Your clicked element is having div#hello as parent');
    }
}
$(document).bind('click', fun);
-->
</script>

</html>

Child-Of-Hello tıklandığında olmak, $('div#hello').parents(target).length ^ dönecektir sadece bekliyorum . 0.

Ancak, ben herhangi bir yeri tıklatın zaman sadece olur.

Benim koduyla yanlış bir şey mi var?

CEVAP
20 EYLÜL 2010, PAZARTESİ


Eğer sadece doğrudan üst ve diğer ataları değil ilgilenen varsa, sadece parent(), kullanmak ve seçici verebilirsiniz target.parent('div#hello') gibi.

Örnek:http://jsfiddle.net/6BX9n/

function fun(evt) {
    var target = $(evt.target);    
    if (target.parent('div#hello').length) {
        alert('Your clicked element is having div#hello as parent');
    }
}

Ya da varsa Eğer bu maç herhangi bir ataları olup olmadığını görmek için kontrol etmek istiyorsanız, o zaman .parents() kullanın.

Örnek:http://jsfiddle.net/6BX9n/1/

function fun(evt) {
    var target = $(evt.target);    
    if (target.parents('div#hello').length) {
        alert('Your clicked element is having div#hello as parent');
    }
}

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Canal TekZoom

    Canal TekZoo

    1 NİSAN 2012
  • PorterRobinsonVEVO

    PorterRobins

    11 Kasım 2013
  • Rachel Raum

    Rachel Raum

    10 EYLÜL 2007