jquery-每个用于隐藏元素
jquery-each for hidding elements
我有两个按钮
<div id="box1" class="alert alert-danger alert-dismissable">
<button id="1" aria-label="close" aria-hidden="true" data-dismiss="alert" class="close" type="button">×</button>
1 test button
</div>
<div id="box2" class="alert alert-danger alert-dismissable">
<button id="2" aria-label="close" aria-hidden="true" data-dismiss="alert" class="close" type="button">×</button>
2 test button
</div>
嗯,用两个 if 语句隐藏它们是可行的
if( $.cookie('box1') === 'closed' ) {
$('#box1').hide();
}
if( $.cookie('box2') === 'closed' ) {
$('#box2').hide();
}
按钮越多越好,但这行不通 - 为什么不呢? :-|发送
$('.close').each(function(id, element) {
var id = $(element).attr('id');
if( $.cookie('#box'+id) === 'closed' ) {
$('#box'+id).hide();
}
});
if( $.cookie('#box'+id) === 'closed' ) {
问题出在 box
之前的 #
。这是一个cookie,不是元素的id,你不需要它。
只需删除if( $.cookie('#box'+id) === 'closed' ) {
前的#
所以,它应该是这样的:
$('.close').each(function(id, element) {
var id = $(element).attr('id');
if( $.cookie('box'+id) === 'closed' ) {
$('#box'+id).hide();
}
});
我有两个按钮
<div id="box1" class="alert alert-danger alert-dismissable">
<button id="1" aria-label="close" aria-hidden="true" data-dismiss="alert" class="close" type="button">×</button>
1 test button
</div>
<div id="box2" class="alert alert-danger alert-dismissable">
<button id="2" aria-label="close" aria-hidden="true" data-dismiss="alert" class="close" type="button">×</button>
2 test button
</div>
嗯,用两个 if 语句隐藏它们是可行的
if( $.cookie('box1') === 'closed' ) {
$('#box1').hide();
}
if( $.cookie('box2') === 'closed' ) {
$('#box2').hide();
}
按钮越多越好,但这行不通 - 为什么不呢? :-|发送
$('.close').each(function(id, element) {
var id = $(element).attr('id');
if( $.cookie('#box'+id) === 'closed' ) {
$('#box'+id).hide();
}
});
if( $.cookie('#box'+id) === 'closed' ) {
问题出在 box
之前的 #
。这是一个cookie,不是元素的id,你不需要它。
只需删除if( $.cookie('#box'+id) === 'closed' ) {
所以,它应该是这样的:
$('.close').each(function(id, element) {
var id = $(element).attr('id');
if( $.cookie('box'+id) === 'closed' ) {
$('#box'+id).hide();
}
});