[英]jQuery toggle a class existent above the clicked function
我在下面有多个HTML实例:
<div class="col-md-4">
<div class="widget">
<div class="widget-head">
<a class="collapse" href="#"><i class="fa fa-arrow-circle-down" aria-hidden="true"></i></a>
<span>Title</span>
<a href="#"><i class="fa fa-expand icon-spacer" aria-hidden="true" onclick="dosomething();"></i></a>
</div>
</div>
</div>
jQuery的:
function dosomething() {
.widget above toggleClass('someClassHere');
}
我需要能够单击dosomething
并将class
切换(添加)到其上方最近的.widget
。
如何在jQuery
做到这一点?
使用jQuery .closest()
$(function() { $('.icon-spacer').click(function(e) { e.preventDefault(); $(this).closest('.widget').toggleClass('red'); }); });
.red { background: #f00; }
<link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.3/css/font-awesome.min.css" rel="stylesheet"/> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <div class="col-md-4"> <div class="widget"> <div class="widget-head"> <a class="collapse" href="#"><i class="fa fa-arrow-circle-down" aria-hidden="true"></i></a> <span>Title</span> <a href="#" class="fa fa-expand icon-spacer" aria-hidden="true"></a> </div> </div> </div>
您可以使用closest
jQuery的方法。
<a href="#"><i class="fa fa-expand icon-spacer" aria-hidden="true" onclick="dosomething(this);"></i></a>
function dosomething(obj) {
$(obj).closest('.widget').toggleClass('someClassHere');
}
您可以使用onclick方法来触发事件,并在getSelectedElement之后通过jquery添加类
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.