jquery实现点击a标签后添加背景颜色

左侧是导航.右侧是导航相应的展示框架.
现在想在不给导航的a标签内加ID的情况下 实现
A B C D E F G H I J K 这几个导航 点击A(也就是当右侧框架展示A页面时)A的标签背景颜色通过JQ来实现添加.当点击B的标签时候.A恢复默认.B标签实现背景颜色通过JQ来实现添加.

注意是在不用给<a>标签加ID 的情况下可以实现吗? 因为太多了 如果用each的话 会很麻烦.

1、新建一个html文件,命名为test.html。

2、在test.html文件内,使用p标签创建一个区域,下面将在p标签内添加一个a标签。

3、在test.html文件内,设置p标签的id为mytest,主要用于下再通过该id获得p标签对象。

4、在test.html文件内,使用button标签创建一个按钮,按钮名称为“添加一个a标签”。

5、在test.html文件内,给button按钮绑定onclick点击事件,当按钮被点击时,执行addaa()函数。

6、在js标签中,创建addaa()函数,在函数内,创建一个变量html保存要添加的a标签,再使用append()方法向被选对象(p标签)内添加一个a标签。

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-06-16

举个例子假设你nav标签下有这么多的a标签。现在代码开始

$('nav a').on('click',function(e){
    event.preventDefault();
    $(this).css('background','#000').siblings().css('background','#fff');
});

本回答被网友采纳
第2个回答  2013-08-27
给每个A加click事件,用$(this)来改变当前的背景颜色,其他的都把背景颜色去掉 然后点击B的时候再把所有的A标签的背景颜色去掉即可追问

可以给个具体的实例吗?

第3个回答  2013-08-27
把需要变换的背景写成class,如

.bgcolor{background:#444}
a标签最好放在一个容器里面,如一个div,暂且用id标识它<div id="tit"><a>1</a><a>2</a><a>3</a></div>
单击a标签的时候把这个class添加到a标签上面去就行了,当然,为了美观,a标签里面还可以嵌套其它标签
$("#tit a").click(function{
e.preventDefault();//阻止a标签的默认事件

$(this).addClass("bgcolor");//为当前标签添加bgcolor类

$(this).siblings().removeClass("bgcolor");//移除当前元素的同级元素的bgcolor类
});
上面的代码都是手打的,可能有误,在编辑器里面应该由提示吧。追问

试了一下没有任何效果呢..

本回答被网友采纳
相似回答