所以我的脚本运行完美,但这是问题所在,我有40px高度的按钮(此处为Sprite动作),但前20个按钮只能完美显示。当您单击按钮即img时,底部20像素显示完美!但是...问题,我在脚本中包含了一种将所有其他默认值恢复为默认值的方法(现在应该只选择一个),如何解决这个我似乎无法解决的问题,因为我可以选择多个**用户可以切换**问题的脚本的最后一部分。谢谢
$(document).ready(function() {
$('.form_sub').hide();
$('.theader').addClass('active');
$('.theader_t').click(function() {
$('.form_header').show();
$('.form_sub').hide();
$('.theader').addClass('active');
$('.sub_theader').removeClass('active');
});
$('.sub_theader_t').click(function() {
$('.form_header').hide();
$('.form_sub').show();
$('.theader').removeClass('active');
$('.sub_theader').addClass('active');
});
$('.top_head_img').click(function() {
$(this).css({
position: 'relative',
bottom: '20px'
}).siblings().css(
'bottom', '0'
);
});
});
<ul class="top_head">
<li>
<a href="javascript:void(0)" onClick="selectPic5('top');"><img src="custom/images/top2.jpg" alt="Left" border="0" class="top_head_img"/></a>
</li>
<li>
<a href="javascript:void(0)" onClick="selectPic5('center');"><img src="custom/images/mid2.jpg" alt="Center" border="0" class="top_head_img"/></a>
</li>
<li>
<a href="javascript:void(0)" onClick="selectPic5('bottom');"><img src="custom/images/bot2.jpg" alt="Right" border="0" class="top_head_img"/></a>
</li>
</ul>
最佳答案
无需太多努力,这就是我的建议:使用CSS制作图像精灵。
您可以在某些block
链接标签上使用背景图像,而不是实际的图像标签(可以随意在这些a
上重新添加所需的onClicks):
<ul class="top_head">
<li>
<a href="#"></a>
</li>
<li>
<a href="#"></a>
</li>
<li>
<a href="#"></a>
</li>
</ul>
CSS中的精灵内容:
.top_head li a {
height: 20px;
width: 20px;
display: block;
background: url(http://lorempixel.com/20/40/abstract) 0 0 no-repeat;
overflow: hidden;
margin: 5px;
}
.top_head li a.selected {
background: url(http://lorempixel.com/20/40/abstract) 0 -20px no-repeat;
}
您的点击功能可以像这样简单:
$('.top_head li a').click(function() {
$('.top_head li a').removeClass('selected');
$(this).toggleClass('selected');
});
关于jquery - jQuery将值恢复为原始值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12431883/