Javascript jQuery切换最近的信息
我有以下html:Javascript jQuery切换最近的信息,javascript,jquery,html,toggle,Javascript,Jquery,Html,Toggle,我有以下html: <div class="col-md-12"> <div class="group"> <div class="label"> <li class="interrogation">?</li> </div> </div> <div class="message"></div> </div> <
<div class="col-md-12">
<div class="group">
<div class="label">
<li class="interrogation">?</li>
</div>
</div>
<div class="message"></div>
</div>
<div class="col-md-12">
<div class="group">
<div class="label">
<li class="interrogation">?</li>
</div>
</div>
<div class="message"></div>
</div>
当前代码可以工作,但当我单击其中一条消息时,它会切换页面上的所有消息。如何使其仅切换问号后面的消息?这是因为您在函数中使用了
$(“.query”)
选择器。这将选择文档中具有该类的所有元素。使用$(this)
仅将单击的元素作为选择器的参考
这是一把小提琴:
$(函数(){
$(“.message”).hide();
$(“.query”)。单击(函数(){
$(this).closest(“.group”).parent().find(“.message”).toggle();
});
});代码>
信息1
信息2
这是因为您在函数中使用了$(“.query”)
选择器。这将选择文档中具有该类的所有元素。使用$(this)
仅将单击的元素作为选择器的参考
这是一把小提琴:
$(函数(){
$(“.message”).hide();
$(“.query”)。单击(函数(){
$(this).closest(“.group”).parent().find(“.message”).toggle();
});
});代码>
信息1
信息2
给你一个解决方案
$('.query')。单击(函数(){
$(this).closest('div.group').next('div.message').slideToggle();
});代码>
。消息{
显示:无;
}
1.审讯{
光标:指针;
}
信息1
信息2
给你一个解决方案
$('.query')。单击(函数(){
$(this).closest('div.group').next('div.message').slideToggle();
});代码>
。消息{
显示:无;
}
1.审讯{
光标:指针;
}
信息1
信息2
像这样的东西
var ns={};
ns.init=函数(){
$(“.message”).hide()
$(“.query”)。单击(函数(){
var commonParent=$(this).closest(“.col-md-12”);
commonParent.find(“.message”).toggle();
});
}
ns.init()代码>
味精1
味精2
像这样的东西
var ns={};
ns.init=函数(){
$(“.message”).hide()
$(“.query”)。单击(函数(){
var commonParent=$(this).closest(“.col-md-12”);
commonParent.find(“.message”).toggle();
});
}
ns.init()代码>
味精1
味精2
使用$(this).closest()
而不是('.distriction')。closest()
使用$(this).closest()
而不是('.distriction')。closest()
此问题有一些关于在jQuery单击功能中使用This
的详细信息:此问题有一些关于在jQuery单击功能中使用This
的详细信息:
ns.init = function() {
$(".message").hide();
$(".interrogation").click(function(){
$(".interrogation").closest(".group").parent().find(".message").toggle();
});
}