我想显示一个元素,但我必须注意,该元素是可见的。元素可能以不同的情况和方式(div,span,i ...)嵌套。
因此,我想查找不可见的目标最接近的元素并将其更改。
我以这种方式尝试,但是我失败了。
//info: result.msg_target_id = '#myid'
$(result.msg_target_id).closest(':hidden').show();
是否可以仅在“:hidden”中使用clesest-而不使用div,span,i等?
我做错了,还是做到最好?
更新这是html部分,但请不要,那只是一种可能的html情况,它在html样式中未知,上面的功能正在使用中。
<div id="modal_errormsg_div" class="alert alert-danger alert-dismissible hide">
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
<h5><i class="icon fa fa-ban"></i><span id="modal_errormsg_head"> <?= trans('error')?></span></h5>
<span id="modal_errormsg_body"></span>
</div>
更新资料
同时,我尝试了这些方法,但是所有方法都失败了。
$(result.msg_target_id).prevAll(':hidden:first').show();
$(result.msg_target_id).prevAll(':hidden:first').removeClass('hide');
$(result.msg_target_id).siblings(':hidden').show();
$(result.msg_target_id).siblings(':hidden').removeClass('hide');
基于@Swati,这是解决此问题的方法
$("#myid-inside").show()//show first the divs whose id is there
$("#myid-inside").parent(".hide:first").addClass('show').removeClass('hide') //use parent because the outer div is parent of inner .
//if the div which you need to display is at same level i.e :
//<div id="myid-outside" class="hide">
//<p id="myid-inside1" style="display:none;">Show me</p>
// <p id="myid-inside" style="display:none;">Show me</p>
//</div>
//here `myid-inside1` is on same level so use sibilings ..or prevAll else if its not in same level use parent .
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句