国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

? ? ????? JS ???? jquery?? ?? attr()? ???? ?? prop()? ??????

jquery?? ?? attr()? ???? ?? prop()? ??????

Jun 17, 2017 pm 01:43 PM
jquery ??

???? ?? ?? ????? Select ????? ??? ????:

setSelects jquery 1.9.0? ??? ? Firefox?? ???? ????. ?? jQuery 1.8.3 ??? ???? ??? jQuery 1.9.0 ??? ??? ? ?? ????.

???? ??? ??? ?????. 1.9.0 ?????

<input type="checkbox" />
<script>
????$(function()?{
????????$('input').click(function()?{
????????????$(this).attr('checked');
????????});
????});
</script>

???? ?????. ??? ?? ???? ????.

??? 1.8.3 ????? ??? ???? ???? ????.

?? ?? attr() ??? ??? ??? ??? ?? ?? ???, ?? ??? ????? jQuery 1.6?? ??? ??? prop()? ??? ? ?? ???. , ??? ? ?? ??? ?? ????. ????? ?? ??? ??? ????? ???? ????? ? prop() ???? ???? ????

Before?jQuery?1.6,?the?.attr()?method?sometimes?took?property?values?into?account?when?retrieving?some?attributes,?which?could?cause?inconsistent?behavior.

jQuery 1.6 ???? attr()? ???? ??? ???? ??

??

? ??????. ?? ?? attr()? ???? ?? prop()? ??????

To?retrieve?and?change?DOM?properties?such?as?the?checked,?selected,?or?disabled?state?of?form?elements,?use?the?.prop()?method.

?? ?? ??? ???:

checked, selected ?? ????? ?? ? ??

?? true? false? ?? ??? prop()? ???? ?? ??? attr()? ?????? ???? attr('checked')? ?????. ??? ??? ????? prop('checked')? ?????.

???, ?? ??? ???? ?? ? ????. ??? ???? attr()? ???? ? jQuery 1.8.3? 1.9.0 ??? ??? ?? ??? ??????

?? ??? ???? ?? ???, ?? ?? ??? ?? ??? ?? ????:

1.8.3 attr():

attr:?function(?elem,?name,?value,?pass?)?{????var?ret,?hooks,?notxml,
????????nType?=?elem.nodeType;????//?don't?get/set?attributes?on?text,?comment?and?attribute?nodes
????if?(?!elem?||?nType?===?3?||?nType?===?8?||?nType?===?2?)?{????????return;
????}????if?(?pass?&&?jQuery.isFunction(?jQuery.fn[?name?]?)?)?{????????return?jQuery(?elem?)[?name?](?value?);
????}????//?Fallback?to?prop?when?attributes?are?not?supported
????if?(?typeof?elem.getAttribute?===?"undefined"?)?{????????return?jQuery.prop(?elem,?name,?value?);
????}

????notxml?=?nType?!==?1?||?!jQuery.isXMLDoc(?elem?);????//?All?attributes?are?lowercase
????//?Grab?necessary?hook?if?one?is?defined
????if?(?notxml?)?{
????????name?=?name.toLowerCase();
????????hooks?=?jQuery.attrHooks[?name?]?||?(?rboolean.test(?name?)???boolHook?:?nodeHook?);
????}????if?(?value?!==?undefined?)?{????????if?(?value?===?null?)?{
????????????jQuery.removeAttr(?elem,?name?);????????????return;

????????}?else?if?(?hooks?&&?"set"?in?hooks?&&?notxml?&&?(ret?=?hooks.set(?elem,?value,?name?))?!==?undefined?)?{????????????return?ret;

????????}?else?{
????????????elem.setAttribute(?name,?value?+?""?);????????????return?value;
????????}

????}?else?if?(?hooks?&&?"get"?in?hooks?&&?notxml?&&?(ret?=?hooks.get(?elem,?name?))?!==?null?)?{????????return?ret;

????}?else?{

????????ret?=?elem.getAttribute(?name?);????????//?Non-existent?attributes?return?null,?we?normalize?to?undefined
????????return?ret?===?null??
????????????undefined?:
????????????ret;
????}
}

1.9.0 attr():

?attr:?function(?elem,?name,?value,?pass?)?{???
??var?ret,?hooks,?notxml,
????????nType?=?elem.nodeType;????
??//?don't?get/set?attributes?on?text,?comment?and?attribute?nodes
????if?(?!elem?||?nType?===?3?||?nType?===?8?||?nType?===?2?)?{????????
???????????return;
????}????
???if?(?pass?&&?jQuery.isFunction(?jQuery.fn[?name?]?)?)?{????????
????????return?jQuery(?elem?)[?name?](?value?);
????}????
????????//?Fallback?to?prop?when?attributes?are?not?supported
????if?(?typeof?elem.getAttribute?===?"undefined"?)?{???????
?????????return?jQuery.prop(?elem,?name,?value?);
????}

????notxml?=?nType?!==?1?||?!jQuery.isXMLDoc(?elem?);????
???//?All?attributes?are?lowercase
????//?Grab?necessary?hook?if?one?is?defined
????if?(?notxml?)?{
????????name?=?name.toLowerCase();
????????hooks?=?jQuery.attrHooks[?name?]?||?(?rboolean.test(?name?)???boolHook?:?nodeHook?);
????}????
???if?(?value?!==?undefined?)?{????????
???????if?(?value?===?null?)?{
????????????jQuery.removeAttr(?elem,?name?);????????????
????????????return;

????????}?else?if?(?hooks?&&?"set"?in?hooks?&&?notxml?&&?(ret?=?hooks.set(?elem,?value,?name?))?!==?undefined?)?{????????????
????????????return?ret;

????????}?else?{
????????????elem.setAttribute(?name,?value?+?""?);???????????
?????????????return?value;
????????}

????}?else?if?(?hooks?&&?"get"?in?hooks?&&?notxml?&&?(ret?=?hooks.get(?elem,?name?))?!==?null?)?{??????
???????????????return?ret;

????}?else?{

????????ret?=?elem.getAttribute(?name?);????????
??????//?Non-existent?attributes?return?null,?we?normalize?to?undefined
????????return?ret?===?null??
????????????undefined?:
????????????ret;
????}
}

prop of 1.8.3 1.9.0 ()? ?????:

prop:?function(?elem,?name,?value?)?{????
??var?ret,?hooks,?notxml,
???nType?=?elem.nodeType;????
???//?don't?get/set?properties?on?text,?comment?and?attribute?nodes
????if?(?!elem?||?nType?===?3?||?nType?===?8?||?nType?===?2?)?{????????
????return;
????}

????notxml?=?nType?!==?1?||?!jQuery.isXMLDoc(?elem?);????
????if?(?notxml?)?{????????
????//?Fix?name?and?attach?hooks
????????name?=?jQuery.propFix[?name?]?||?name;
????????hooks?=?jQuery.propHooks[?name?];
????}???
?????if?(?value?!==?undefined?)?{????????
?????????if?(?hooks?&&?"set"?in?hooks?&&?(ret?=?hooks.set(?elem,?value,?name?))?!==?undefined?)?{???????????
??????????return?ret;

????????}?else?{????????????
????????return?(?elem[?name?]?=?value?);
????????}

????}?else?{????????
???????if?(?hooks?&&?"get"?in?hooks?&&?(ret?=?hooks.get(?elem,?name?))?!==?null?)?{????????????
???????return?ret;

????????}?else?{????????????
????????return?elem[?name?];
????????}
????}
}

首先,我們看下?attr() 和 prop() 的區(qū)別

attr() 里面,最關(guān)鍵的兩行代碼

elem.setAttribute(?name,?value?+?""?);?
ret?=??elem.getAttribute(?name?);

很明顯的看出來(lái),使用的 DOM 的 API setAttribute() 和 getAttribute() 方法操作的屬性元素節(jié)點(diǎn)。

prop() 里面,最關(guān)鍵的兩行代碼

return?(?elem[?name?]?=?value?);return?elem[?name?];

可以理解為 document.getElementById(el)[name] = value,這是轉(zhuǎn)化成 element 的一個(gè)屬性。

對(duì)比調(diào)試?1.9.0 和 1.8.3 的 attr() 方法,發(fā)現(xiàn)兩者的區(qū)別在于

hooks.get(?elem,?name?))

返回的值不一樣,具體的實(shí)現(xiàn):

1.8.3 中

boolHook?=?{
????get:?function(?elem,?name?)?{????????
????//?Align?boolean?attributes?with?corresponding?properties
????????//?Fall?back?to?attribute?presence?where?some?booleans?are?not?supported
????????var?attrNode,
????????????property?=?jQuery.prop(?elem,?name?);????????
????????????return?property?===?true?||?typeof?property?!==?"boolean"?&&?(?attrNode?=?elem.getAttributeNode(name)?)?&&?attrNode.nodeValue?!==?false??
????????????name.toLowerCase()?:???????????
?????????????undefined;
????}
}

1.9.0 中

boolHook?=?{????get:?function(?elem,?name?)?{???????
?var
????????????//?Use?.prop?to?determine?if?this?attribute?is?understood?as?boolean
????????????prop?=?jQuery.prop(?elem,?name?),??????????
??????????????//?Fetch?it?accordingly
????????????attr?=?typeof?prop?===?"boolean"?&&?elem.getAttribute(?name?),
????????????detail?=?typeof?prop?===?"boolean"??

????????????????getSetInput?&&?getSetAttribute??
????????????????????attr?!=?null?:???????????????????
?????????????????????//?oldIE?fabricates?an?empty?string?for?missing?boolean?attributes
????????????????????//?and?conflates?checked/selected?into?attroperties
????????????????????ruseDefault.test(?name?)??
????????????????????????elem[?jQuery.camelCase(?"default-"?+?name?)?]?:
????????????????????????!!attr?:???????????????
?????????????????????????//?fetch?an?attribute?node?for?properties?not?recognized?as?boolean
????????????????elem.getAttributeNode(?name?);???????
?????????????????return?detail?&&?detail.value?!==?false??
????????????name.toLowerCase()?:
????????????undefined;
????}
}

由此可見,1.9.0 開始不建議使用 attr() 來(lái)對(duì)具有 true 和 false 兩個(gè)屬性的屬性進(jìn)行操作了。

那么我們的結(jié)論是:

具有 true 和 false 兩個(gè)屬性的屬性,如 checked, selected 或者 disabled 使用prop(),其他的使用 attr(),具體見下表:

? ??? jquery?? ?? attr()? ???? ?? prop()? ??????? ?? ?????. ??? ??? PHP ??? ????? ?? ?? ??? ?????!

? ????? ??
? ?? ??? ????? ???? ??? ??????, ???? ?????? ????. ? ???? ?? ???? ?? ??? ?? ????. ???? ??? ???? ???? ??? ?? admin@php.cn?? ?????.

? AI ??

Undresser.AI Undress

Undresser.AI Undress

???? ?? ??? ??? ?? AI ?? ?

AI Clothes Remover

AI Clothes Remover

???? ?? ???? ??? AI ?????.

Video Face Swap

Video Face Swap

??? ??? AI ?? ?? ??? ???? ?? ???? ??? ?? ????!

???

??? ??

???++7.3.1

???++7.3.1

???? ?? ?? ?? ???

SublimeText3 ??? ??

SublimeText3 ??? ??

??? ??, ???? ?? ????.

???? 13.0.1 ???

???? 13.0.1 ???

??? PHP ?? ?? ??

???? CS6

???? CS6

??? ? ?? ??

SublimeText3 Mac ??

SublimeText3 Mac ??

? ??? ?? ?? ?????(SublimeText3)

???

??? ??

??? ????
1601
29
PHP ????
1502
276
???
foobar2000? ??? ???????? - foobar2000 ??? foobar2000? ??? ???????? - foobar2000 ??? Mar 18, 2024 am 10:58 AM

foobar2000? ???? ?? ???? ?? ? ?? ????????. ?? ??? ??? ??? ??? ?????. ?? ????? ??? ??? ???? ?? ????? ??? ?? ??? ?? ? ????. ????? ?? ???? ?????. ? ??? ?? ???? ???? ?? ?? ??? ?????. ????? ???? ???? ???? ???? ????. ?? ??? ??? ??? ????, ??? ???? ?? ??? ?????, ??? ??? ??? ??? ???? ?? ?? ????? ?????. ?? ??? ???? ??? ?? ??? ?????. ??? ???? ?? ?? ??? ????? ??? ?? ??? ?? ??????. ??? ?? ????

?????????? ?? ????????? -?????????? ??? ?????? ?????????? ?? ????????? -?????????? ??? ?????? Mar 18, 2024 pm 02:58 PM

CrystalDiskMark? ?? ? ??? ??/?? ??? ??? ???? ?? ????? ?? HDD ???? ?????. ???? ?????? CrystalDiskMark ??? crystaldiskmark ???? ???????~ 1. CrystalDiskMark ?? CrystalDiskMark? ??? ?? ????? ??? ???? ????(SSD)? ?? ? ?? ??? ??? ???? ? ?? ???? ??? ?? ??? ?????. ). ??? I/O ??. ?? Windows ?? ?????? ??? ???? ?????? ??? ??? ??? ???? ?? ???? ??? ??? ??? ???? ???? ??? ?? ?????.

Baidu Netdisk ? ?? ?? Baidu Netdisk ? ?? ?? Mar 27, 2024 pm 06:46 PM

??? ???? ????? ??? ?? ??? ??? ???? ? ? ??? ?????. ?? ??? ???? ???? ??? ? ??? Baidu Netdisk? ??? ???? ??, ???? ?? ?? ? ??? ?? ???? ?? ???? ??? ?????. ??? ??? ????, ??? ????, ????? ???? ????, ??? ?? ?? ?? Baidu Cloud Disk? ??? ??? ??? ? ????. ??? ?? ???? Baidu Netdisk ?? ???? ?? ??? ???? ?? ? ???? ? ??????? Baidu Netdisk ? ?? ??? ??? ?????. Baidu ???? ???? ??? ?? ??: 1. ?? ?? Baidu Cloud ?????? ?????? ??? ? ??? ?? ?? ??? ??????.

BTCC ????: BTCC ???? MetaMask ??? ????? ???? ??? ?????? BTCC ????: BTCC ???? MetaMask ??? ????? ???? ??? ?????? Apr 26, 2024 am 09:40 AM

MetaMask(???? Little Fox Wallet???? ?)? ???? ??? ?? ??? ?? ????????. ?? BTCC? MetaMask ??? ?? ???? ?????. ??? ? MetaMask ??? ???? ??? ????? ??? ???? ??? ??? ? ??? ? ????? 20 USDT ??? ???? ?? ? ????. BTCCMetaMask ?? ??????? MetaMask ?? ? ?? ??, BTCC?? Little Fox ??? ????? ???? ??? ??? ?????. MetaMask ???? ?????? 3?? ? ??? ???? ??? MetaMask Little Fox Wallet? ??? ?? ?? ?? ???? ?? ? ?????. ??? ??? ? ??? ???? ????? ??? ? ????.

NetEase ???? ???? ???? ?? NetEase ???? ???? ???? ?? Mar 27, 2024 pm 05:32 PM

NetEase Mailbox? ?? ????? ?? ???? ??? ???, ????? ???? ???? ?? ????? ??? ?? ????. NetEase Mailbox Master? ??? ???? ?? ??? ??? ??? ?????? ??? ??? ? ?? ????? ?? ????? ??? ??? ?? ???? ????. ??? NetEase Mailbox Master? ???? ??? ? ??? ???? ???? ? ???? ???? ??? ??? ???? ??? ?? ????! ??, ??? ?????? NetEase Mailbox Master ?? ???? ?????? ? ????. App Store ?? Baidu Mobile Assistant?? "NetEase Mailbox Master"? ??? ? ??? ?? ?????. ???? ? ??? ???? NetEase ??? ??? ?? ??????. ??? ?????? ??? ????.

Xiaomi Auto ? ?? ?? Xiaomi Auto ? ?? ?? Apr 01, 2024 pm 09:19 PM

Xiaomi ??? ?????? ?? ??? ?? ??? ???? ???? ????? ???? ?? ??? ?? ??? ?? ??, ?? ??? ??, ??? ???? ???? ???? ??? ??? ???? ??? ? ????. ??? ? ?????? ???? ??? ?? ?? ?????. Xiaomi Auto ? ?? ? ?? ??? ?? ?? 1. Xiaomi Auto ?? 3? 25? Apple AppStore? ?????? ?? Android ???? ? ????? ????? ? ????. ??? ??: Xiaomi Auto? ?? ??? ?? ?? ??? ?????. , ?? ??? ?? Xiaomi ??? ?? ? ???? ?? ?? ?? ??? ??? ??? ?????. 3. ????: Xiaomi Auto ??? ??? ????, ??? ??? ????, ?? ??? ??? ?????. 4. ??? ??: ???? ?? ??, ?? ??, ??? ??, ???? ?????.

iOS 17.4 '?? ?? ??'? ??? ?? ??? ???? ??? ??????. iOS 17.4 '?? ?? ??'? ??? ?? ??? ???? ??? ??????. Mar 10, 2024 pm 04:34 PM

Apple? ???? iOS 17.4 ????? ???? iPhone? ??? ??? ??? ?? ??? ??????. ?????? ??? ????? ???? ??? EU ???? ?? ? ?????? ?? ????? ????? ? ????. ??, ????? iPhone ?? ??? ???? ????? ? ?? ???? ?? ??? ???? ?? ? ?? "???? ?? ??" ?? ??? ?????. "iOS17.3??? ??? '?? ?? ??' ??? ??? ???? ??? ??? ?? ??? ??????. ???? ??? ?? ??? ??? ?? ?? ? ? ??? ????? ?? ?? ??? ???? ???. Apple ID ?? ??, ?? ?? ?? ?? ? ?? ???? ???? ????? ??? ?? ???? ???.

?????? ??? ??? ?????? ??? ??? Mar 12, 2024 pm 07:34 PM

?????? CD? ??? ??? ???, ???????? ?? ???? ??? ?? ??? ? ???, ?? ?? ? CDK ?? ??? ?? ???. ???? Steam Mall?? ? ?? ??? ???? ?? ??? ?????. ?? ???? ?? ???? CD? ???? ??? ?? ????. ???? ?? ??? ??? ???????. ?????? CD? ??? 1. ?? ?????? ?? ?? ? ?? CDK ????? ?????. 2. ?? ?? Steam ???? ??????. 3. ?? ?? ???? "??" ??? ?????. 4. ? ???? "Steam?? ?? ???"? ??? ?????. 5. ?? ??????? ?? ??? ?????. 6. ?? ???? ??

See all articles