javascript函数显示/隐藏多个div,第一个div可见
当页面加载时,我试图使第一个目标div始终可见,而当用户选择该选项时,其他目标div变为可见。当前,它们在页面加载时都是隐藏的,只有在单击按钮后才可见 JS HTML 隐藏其他div后,在第一个div上显示Call.show:javascript函数显示/隐藏多个div,第一个div可见,javascript,jquery,html,css,Javascript,Jquery,Html,Css,当页面加载时,我试图使第一个目标div始终可见,而当用户选择该选项时,其他目标div变为可见。当前,它们在页面加载时都是隐藏的,只有在单击按钮后才可见 JS HTML 隐藏其他div后,在第一个div上显示Call.show: $('.targetDiv').hide(); $('#div1').show(); $('.show').click(function () { $('.targetDiv').hide(); $('#div' + $(this).attr('targ
$('.targetDiv').hide();
$('#div1').show();
$('.show').click(function () {
$('.targetDiv').hide();
$('#div' + $(this).attr('target')).show();
});
您可以使用$'.targetDiv:notdiv1.hide
$'.targetDiv:notdiv1'.hide;
$'.show'。单击函数{
$'.targetDiv'.hide;
$'div'+$this.attr'target'.show;
};
用途:gt0:-
:gt选择索引大于匹配集中索引的所有元素
注:
此属性指定显示链接资源的位置_自己
_空白、\u父项、\u顶部
仅当href属性存在时才使用此属性
因此,我建议使用以下数据:-
试试这个代码
$(".targetDiv").not(':first').hide();
$('.show').click(function () {
$('.targetDiv').hide();
$('#div' + $(this).attr('target')).show();
});
另一种方法是通过css在HTML中隐藏div HTML
$'div1'。show;从第一个div中删除class=targetDiv并使用$'div1.show;你为什么一开始就把它藏起来?你不应该用:不是吗?…我可以发誓我这么做了…我一定是疯了…睡眠不足!谢谢@你想用什么就用什么。这两个选项都是有效的。@Turnip IMHO,这不是最好的方法,因为你正在创建一个不必要的对象。请参阅我最后的评论。如果你真的关心微观优化的水平,不要使用这个。易于理解的
$('.targetDiv').hide();
$('#div1').show();
$('.show').click(function () {
$('.targetDiv').hide();
$('#div' + $(this).attr('target')).show();
});
$('.targetDiv:gt(0)').hide();
<a class="show" data-target="1">Option 1</a>
$(this).data('target')
$(".targetDiv").not(':first').hide();
$('.show').click(function () {
$('.targetDiv').hide();
$('#div' + $(this).attr('target')).show();
});
<div class="buttons">
<a class="show" target="1">Option 1</a>
<a class="show" target="2">Option 2</a>
<a class="show" target="3">Option 3</a>
<a class="show" target="4">Option 4</a>
</div>
<div id="div1" class="targetDiv">Lorum Ipsum 1</div>
<div id="div2" class="targetDiv" style="display:none;">Lorum Ipsum 2</div>
<div id="div3" class="targetDiv" style="display:none;">Lorum Ipsum 3</div>
<div id="div4" class="targetDiv" style="display:none;">Lorum Ipsum 4</div>
//$('.targetDiv').hide();
$('.show').click(function () {
$('.targetDiv').hide();
$('#div' + $(this).attr('target')).show();
});