我在使用jQuery
点击父元素时尝试淡入子元素,但.children()
似乎没有完成我想要做的事情。
单击<h2>
元素时,我尝试使<h1>
元素淡入。
使用Javascript:
$(document).ready(function() {
$('h2').hide();
$('h1').bind('click', function() {
$(this).children().fadeIn(400);
});
});
这是我的代码:
HTML:
<h1>
Visible Parent
<h2>
Hidden Child
</h2>
</h1>
代码的JSFiddle
可以在这里:http://jsfiddle.net/jHkAB/5/
解决:
通过分隔<h1>
和<h2>
元素,然后使用.next()
选择<h1>
元素之后的元素,下一个元素在其前面的元素为淡入时淡入点击。
可在此处找到JSFiddle
代码:http://jsfiddle.net/bazmegakapa/jHkAB/16/。
答案 0 :(得分:4)
标题元素(h1
,h2
等)cannot be contained in each other,因此您的HTML会被浏览器规范化并变为:
<h1>
Visible Parent
</h1>
<h2>
Hidden Child
</h2>
这就是动画不会触发的原因,因为h2
不再是h1
的孩子了。