Javascript 如何在单击的div元素中定位特定范围?

Javascript 如何在单击的div元素中定位特定范围?,javascript,html,jquery,Javascript,Html,Jquery,我尝试了几种方法在div“.text body”中隐藏一个span,但似乎无法使其正常工作。下面是我尝试过的一种方法。如何仅在单击的元素中隐藏“badge badge danger Lightning”类的跨度 $('.text-body').click(function(e){ if($(this).children('div').hasClass('media bg-light p-2')) { // do something } else { $('div.media.b

我尝试了几种方法在div“.text body”中隐藏一个span,但似乎无法使其正常工作。下面是我尝试过的一种方法。如何仅在单击的元素中隐藏“badge badge danger Lightning”类的跨度

$('.text-body').click(function(e){

if($(this).children('div').hasClass('media bg-light p-2'))
{
    // do something
}
else
{
    $('div.media.bg-light.p-2').addClass('mt-1 p-2').removeClass('bg-light')
    $(e).find("span.w-25.float-right.text-right").hide(); //trying to hide span here
    $(this).children('div').addClass("media bg-light p-2");





<a href="javascript:void(0);" class="text-body"><div class="media mt-1 p-2">
  <img src="/static/assets/images/users/avatar-2.jpg" class="mr-2 rounded-circle" height="48"alt="Brandon Smith" />
  <div class="media-body">
     <h5 class="mt-0 mb-0 font-14">
        <span class="float-right text-muted font-12">4:30am</span>
        Brandon Smith
     </h5>
     <p class="mt-1 mb-0 text-muted font-14">
        <span class="w-25 float-right text-right">**<span class="badge badge-danger-lighten">3</span></span>** 
        <span class="w-75">How are you today?</span></p></div></div></a>
$('.text body')。单击(函数(e){
if($(this).children('div').hasClass('media bg light p-2'))
{
//做点什么
}
其他的
{
$('div.media.bg light.p-2')。addClass('mt-1 p-2')。removeClass('bg-light'))
$(e).find(“span.w-25.float right.text right”).hide();//试图在此处隐藏span
$(此).children('div').addClass(“媒体背景灯p-2”);
需要:

$(this).find(".badge-danger-lighten").hide();
需要:

$(this).find(".badge-danger-lighten").hide();

仅举一个简单的例子,说明如果目标元素不是直接的子元素,如何使用
find

$('.text body')。单击(函数(e){
//这将查找具有类徽章和徽章的任何元素
$(this.find('.badge.badge').hide()
})
.text正文{
边框:1px实心;
}

目标跨度

另一个跨度 另一个目标跨度/深度

单击上面的矩形
只是一个简单的例子,说明如果目标元素不是直接的子元素,如何使用
查找

$('.text body')。单击(函数(e){
//这将查找具有类徽章和徽章的任何元素
$(this.find('.badge.badge').hide()
})
.text正文{
边框:1px实心;
}

目标跨度

另一个跨度 另一个目标跨度/深度

单击上面的矩形
在您的问题中,如果指定要用“badge badge danger Lighte”隐藏元素,您只需将其指定为find方法的选择器,然后调用hide

/$(e).find(“span.w-25.float right.text right”).hide();
$(e).find(“.badge.badge”).hide();
这将选择并隐藏这些类的所有子元素


您可以阅读有关“隐藏并在此处查找”和“在此处查找”的内容。在您的问题中,如果指定要使用“badge badge danger Lighte”隐藏元素,您只需将其指定为find方法的选择器,然后调用hide

/$(e).find(“span.w-25.float right.text right”).hide();
$(e).find(“.badge.badge”).hide();
这将选择并隐藏这些类的所有子元素

你可以在这里和这里阅读隐藏和查找