也许我太累但我真的不明白为什么这个东西不起作用?我在这里有jsbin:http://jsbin.com/ariret/19/edit
谢谢你的时间!
<section class="">
<p>Hello there, this is your flight info.</p>
<div class="confirmation">
<h3>Hawaiian Vacation</h3>
<button class="btn">Flight details</button>
<div class="ticket">
<a href="#" class="view-boarding-pass">View Boarding Pass</a>
<img src="http://placekitten.com/g/100/100" alt=""/>
</div>
</div>
</section>
jquery的:
$('.confirmation').on('click', 'button', function() {
console.log('works');
$(this).find('.ticket').hide(); //why is this not working?
});
答案 0 :(得分:1)
find()
用于查找子元素。问题是.ticket
是button
的兄弟,因此您需要使用next()
:
$('.confirmation').on('click', 'button', function() {
$(this).next('.ticket').hide();
});
答案 1 :(得分:0)
this
指向按钮,ticket
不是按钮的下降,但它是下一个兄弟,所以你需要使用.next()
应该是
$('.confirmation').on('click', 'button', function(){
console.log('works');
$(this).next('.ticket').hide(); //why is this not working?
});
答案 2 :(得分:0)
您可以同时使用它们:
$(this).parent().find('.ticket').hide();
$(this).next('.ticket').hide(); //why is this not working?
您只能找到当前节点的子节点。
答案 3 :(得分:0)
试试这个。我猜这就是你想要的
$('.btn').click(function(){
$('.ticket').slideToggle();
});
和更新的jsbin Demo
希望这会有所帮助。谢谢。