區(qū)別:1、css()的靈活性比addclass()高,css()可以很容易動態(tài)的去改變一個樣式的屬性;2、addClass()不能獲取到指定樣式的樣式值,而css()可以獲??;3、css()設(shè)置的樣式屬性優(yōu)先級要高于addClass()。
本教程操作環(huán)境:windows7系統(tǒng)、jquery1.10.2版本、Dell G3電腦。
css()和addclass()的區(qū)別
可維護性:
.addClass()的本質(zhì)是通過定義個class類的樣式規(guī)則,給元素添加一個或多個類。css方法是通過JavaScript大量代碼進行改變元素的樣式
通過.addClass()我們可以批量的給相同的元素設(shè)置統(tǒng)一規(guī)則,變動起來比較方便,可以統(tǒng)一修改刪除。如果通過.css()方法就需要指定每一個元素是一一的修改,日后維護也要一一的修改,比較麻煩
靈活性:
通過.css()方式可以很容易動態(tài)的去改變一個樣式的屬性,不需要在去繁瑣的定義個class類的規(guī)則。一般來說在不確定開始布局規(guī)則,通過動態(tài)生成的HTML代碼結(jié)構(gòu)中,都是通過.css()方法處理的
樣式值:
.addClass()本質(zhì)只是針對class的類的增加刪除,不能獲取到指定樣式的屬性的值,.css()可以獲取到指定的樣式值。
樣式的優(yōu)先級:
css的樣式是有優(yōu)先級的,當外部樣式、內(nèi)部樣式和內(nèi)聯(lián)樣式同一樣式規(guī)則同時應(yīng)用于同一個元素的時候,優(yōu)先級如下
外部樣式 < 內(nèi)部樣式 < 內(nèi)聯(lián)樣式
-
.addClass()方法是通過增加class名的方式,那么這個樣式是在外部文件或者內(nèi)部樣式中先定義好的,等到需要的時候在附加到元素上
-
通過.css()方法處理的是內(nèi)聯(lián)樣式,直接通過元素的style屬性附加到元素上的
通過.css
方法設(shè)置的樣式屬性優(yōu)先級要高于.addClass
方法
總結(jié):
.addClass與.css方法各有利弊,一般是靜態(tài)的結(jié)構(gòu),都確定了布局的規(guī)則,可以用addClass的方法,增加統(tǒng)一的類規(guī)則
如果是動態(tài)的HTML結(jié)構(gòu),在不確定規(guī)則,或者經(jīng)常變化的情況下,一般多考慮.css()方式
相關(guān)視頻教程推薦:jQuery教程(視頻)