我有两个按钮
<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();
}
按钮越多越好,但这不起作用-为什么不起作用?:-|tnx
$('.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();
}
});