最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

javascript - jQuery: iterate over nested elements using each - Stack Overflow

programmeradmin2浏览0评论

i have this basic html structure:

<div class=a>
  <div class=m></div>
  <div class=m></div>
</div>
<div class=b>
  <div class=m></div>
  <div class=m></div>
</div>

now i want to iterate over all m's but also would like to know if i am in a or b. using basic jquery syntax each i fail to do find this out.

$('.m').each(function(index) {
    // how do i know if this m is part of a or b ?
});

i have this basic html structure:

<div class=a>
  <div class=m></div>
  <div class=m></div>
</div>
<div class=b>
  <div class=m></div>
  <div class=m></div>
</div>

now i want to iterate over all m's but also would like to know if i am in a or b. using basic jquery syntax each i fail to do find this out.

$('.m').each(function(index) {
    // how do i know if this m is part of a or b ?
});
Share Improve this question edited Aug 26, 2011 at 14:47 Reporter 3,9485 gold badges35 silver badges49 bronze badges asked Aug 26, 2011 at 14:45 clampclamp 34k75 gold badges207 silver badges305 bronze badges
Add a ment  | 

7 Answers 7

Reset to default 8

$(this).parent().hasClass("a") or $(this).parent().hasClass("b")

if($(this).parent().hasClass('a'))

And same for b, it should work.

If you care, then I'd separate the selectors like this:

$('.a .m').each(function(index) {
    // now I'm on .a items
});

$('.b .m').each(function(index) {
    // now I'm on .b items
});
$('.m').each(function(index) {
    this.parentNode.getAttribute( "class" );
});

For example, check the parent is .a

if($(this).parent().is('.a'))

You could use the .closest method:

var $this = $(this);
if ($this.closest("a").length === 1) {
    alert("I'm in an a div");
}
else {
    alert("I'm in a b div");
}   

You can check the class of the parent element inside your function to identify if you are in 'a' or 'b'

$('.m').each(function() {
     var parentClass = $(this).parent().attr('class');
});

So, the parentClass var should have a value of either 'a' or 'b'

发布评论

评论列表(0)

  1. 暂无评论