如果数据属性匹配,我使用以下内容在单击按钮时显示相应的div。如何隐藏所有其他不匹配的?
$('.document-container').click(function() {
var myEm = $(this).data('language');
$('.documents[data-document = '+myEm+']').show();
});
答案 0 :(得分:1)
您可以在所有元素上调用hide()
,然后filter()
调用show()
的元素。像这样:
$('.document-container').click(function() {
var myEm = $(this).data('language');
$('.documents').hide().filter('[data-document="' + myEm + '"]').show();
});
答案 1 :(得分:0)
试试这个:
$('.document-container').click(function() {
var myEm = $(this).data('language');
$(".documents[data-document = '" + myEm + "']").show();
});
答案 2 :(得分:0)
你可以说“隐藏一切不是我要展示的东西”,就像这样:
$("*:not('#divToShow')").hide();
我让你成为了一个Jsfiddle来尝试它:https://jsfiddle.net/Flyout/5qf2vadx/