只需在 CSS 中为按钮添加一个“已选择”类,然后将其添加到 jQuery 函数中:
<script>
$(document).ready(function() {
$("#buttons a").click(function() {
var id = $(this).attr("id");
$("#pages div").css("display", "none");
$("#pages div#" + id + "").css("display", "block");
//Add this lines
$("#buttons a.selected").removeClass('selected');
$(this).addClasss('selected');
});
$("#pages div:not(#1)").css("display", "none");
});
</script>
[编辑]
您是否正在尝试制作一个带有图像的水平菜单,以及它下面的一些内容?如果是,您可以使用这段代码jsFiddle :水平菜单...
[编辑 2]
要使其正常工作,您必须像这样命名选定的 img imgname_selected.gif
所以使用这个 jQuery
<script>
$(document).ready(function() {
$("#buttons a").click(function() {
var id = $(this).attr("id");
$("#pages div").css("display", "none");
$("#pages div#" + id + "").css("display", "block");
//Add this lines
$("#buttons a> img[src*='_selected'").attr('src',$("#buttons a> img[src*='_selected'").attr('src').replace('_selected', ''));
$(this).attr('src',$(this).attr('src').replace('.', '_selected.'));
});
$("#pages div:not(#1)").css("display", "none");
});
</script>
[编辑 3]
这是一个工作小提琴。当然,您必须使用良好的 src 替换来更改 js 功能。(像这样)
$("#buttons a.selected").removeClass('selected');
$(this).addClass('selected');
$("#buttons a:not(.selected)").each(function() {
if( $(this).find("img").attr('src').indexOf('_selected')>0) {
$(this).find("img").attr('src', $(this).find("img").attr('src').replace('_selected', ''));
}
});
$(this).find('img').attr('src',$(this).find('img').attr('src').replace('.', '_selected'));
请记住,在这个 conf 中,您必须确保 img 名称没有几个“.”!您可以随意调整它...
警告
在您的 HTML 中,您使用相同的 IDdiv
和... /!\ ID在整个 DOM 中a
必须是唯一的!我已经在小提琴中改变了它。
更多的
仅供参考,如果我在你的情况下,我会适当地使用 CSS 背景来添加图像,并且只需添加一个“选定”类,它只会改变背景!