selected类是要在点击后添加上去的新样式,在点击后,发现没有变化,打开开发者工具,发现selected类已经添加成功了。
在这里没有显示成功的主要原因是后添加的样式表优先级更低,我暂时不清楚具体的原因,先这样理解,tr.parent样式多了一个tr,更具体一些,使得它的权重更高,
后添加的selected类中不管是已有样式中的属性还是新的属性,都无法实现效果。
解决方案:
1.在selected类的属性值后加上!important
2.改为tr.parent
selected类是要在点击后添加上去的新样式,在点击后,发现没有变化,打开开发者工具,发现selected类已经添加成功了。
在这里没有显示成功的主要原因是后添加的样式表优先级更低,我暂时不清楚具体的原因,先这样理解,tr.parent样式多了一个tr,更具体一些,使得它的权重更高,
后添加的selected类中不管是已有样式中的属性还是新的属性,都无法实现效果。
解决方案:
1.在selected类的属性值后加上!important
2.改为tr.parent
转载于:https://www.cnblogs.com/linbudu/p/10632194.html
1.今天写一个练习的时候,使用Jquery的addClass()方法时,没有用,试了好多方法,还是用了!important,虽然样式实现了,但是终究觉得不妥.
2.经过查阅资料最终找到了问题是所在:
原来我在对应的元素上面添加了行内的style样式,这是造成后加入的class类的样式没有办法起到作用的根本原因。jquery中AddClass()方法要求对应的元素中不能有style属性设置,否则无法设置新css显示类
jQuery中.addClass()主要用来给匹配的元素增加一个类或多个类名(class名),需要注意的是这种方法只是给匹配的元素增加了类名,这里所说的增加就是在以前的基础上追加类名,新增加的类名并不会代替元素原有的类名。可以使用.addClass()给元素一次添加一个或多个类,如果添加多个类名时,需要在类名之间用空格隔开。如:<span style="font-size:18px;">$("element").addClass("yourClassName1 yourClassName2 yourClassNameN"); </span>
在jQuery中.removeClass()方法。这个.removeClass()方法刚好与.addClass()方法相反。.removeClass()方法主要是在匹配的元素中删除一个或多个类。在.removeClass()中一点需要特别注意,如果在.removeClass()中指定了类名,那么将在元素中删除相对应的类名,如果没指定任何参数时,.removeClass()将删除元素中所的类,如:<span style="font-size:18px;">//删除指定的类名 $("elements").removeClass("yourClassName1 yourClassName2 yourClassNameN"); //删除匹配元素中的所有类名 $("elements").removeClass(); </span>
<span style="font-size:18px;"> </span>
推荐网址:http://blog.sina.com.cn/s/blog_83958bc60100zk1l.html
源码理解:http://www.cnblogs.com/nuysoft/archive/2011/12/27/2300675.html