我想在加载页面时隐藏div。它是一个动态div虽然被分配了一个类名,然后根据其他标准添加一个数字。
所以我有这个。
$(function() {
$("[class^='myClass']").hide();
});
问题是,稍后,当我尝试显示div时,我只想展示其中一个。所以我试试这个。
$(document).ready(function() {
$("[class^='showDiv']").click(function() {
// I use the showDiv value (array index) to get the specific
// class I need to now show
$(".myClass2").show();
});
});
问题是,它没有显示我的课程。我认为这是因为'隐藏'函数隐藏了以' myClass'开头的所有内容。当我试图展示特定的' .myClass2'时,它有点压倒一切。因为它被早先的隐藏所隐藏。
但是,我无法取消隐藏。否则所有元素都会出现。我在这里失去了什么。
感谢。
修改
我尝试了这个,它确实有用。
而不是刚刚隐藏在开头,我这样做。
$(function() {
$("[class^='myClass']").each(function( index ) {
$(".myClass" + index).hide();
});
});
这很好用。因此,我非常确定从一开始就用一张外卡隐藏一个班级'是我的问题..
有比这更好的解决方案吗?
答案 0 :(得分:0)
这个怎么样? 一对一关系样本
JavaScript的:
$(function() {
$('.myClass').hide();
$('.showDiv').click(function() {
var index = $('.showDiv').index(this);
$('.myClass:eq(' + index + ')').toggle();
});
});
HTML:
<div>
<div class="showDiv">showDiv</div>
<div class="showDiv">showDiv</div>
<div class="showDiv">showDiv</div>
</div>
<div>
<div class="myClass">myClass 1</div>
<div class="myClass">myClass 2</div>
<div class="myClass">myClass 3</div>
</div>