我希望有一个简单的解决方案,但我不能在一分钟看到它。选择和动画所有div的班级,但忽略所有同级儿童
我试图选择所有与类myClass的div,但忽略所述类的所有孩子,包括那些类myClass。例如:
<div class="myClass"> //select
<div class="myClass"> //don't
<div class="myClass"></div> //don't etc
</div>
</div>
<div class="myClass"></div>
<div class="myClass">
<div class="myClass"></div>
</div>
<div class="myClass"></div>
我知道这是一个奇怪的情况,它是从一个需要跨越谷歌地图滑动地图控制在侧DIV(以免覆盖它们)滑动时来一下。需要更改的类都被命名为“gmimoprint”,如果不忽略孩子,则父级内的元素将被移动两倍所需数量的每个级别的嵌套。
我目前的解决方案(更坏的黑客)是调用:
$('div.gmnoprint').stop().animate({ 'marginLeft': '418px' }, 800);
$('div.gmnoprint').children('div.gmnoprint').stop().animate
({ 'marginLeft': '0px' }, 800);
但是,这是可怕的低效和处理器密集型。如果这是重复的,但我找不到任何类似的道歉。
任何帮助非常感谢。
您需要定位父DOM元素而不是类本身。假设每个第一个实例都是共同父母的孩子,那么它不应该太难。 –
如果您有父容器,那么您是否可以在开始时使用css选择器来选择直接的孩子,例如: $('#container> .myClass')。animate ..... –