成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專欄INFORMATION COLUMN

prop 和 attr 中一些羞羞的事情

lmxdawn / 2352人閱讀

摘要:設(shè)置的屬性值可以包括數(shù)組和對象在內(nèi)的任意類型有關(guān)布爾值的屬性之后返回的也是字符串類型選中或禁用直接返回。當(dāng)涉及到值時(shí),比如這樣的,有和這樣的布爾值的元素屬性,在頁面加載的時(shí)候就被設(shè)置,并且一直保持初始值,而則存儲著元素屬性的當(dāng)前值。

引言

前幾天做一個(gè)迷你京東小項(xiàng)目的時(shí)候涉及到一個(gè)全選的小功能,一開始用的是 attr,但是效果完全不是自己想要的,當(dāng)商品按鈕點(diǎn)擊過一次后,attr就無法對其狀態(tài)進(jìn)行更改,最后谷歌了一番發(fā)現(xiàn)需要用 prop 來代替。雖然效果問題解決了,但是自己還是想弄懂 propattr 的區(qū)別.

版本使用不同

遇到問題我一般先會(huì)去查相關(guān)的官方文檔,可在 jq 的 api 中文文檔中沒有發(fā)現(xiàn)有價(jià)值的東西,只是發(fā)現(xiàn)適用的版本和概念有所輕微的不同。

attr : 設(shè)置或返回被選元素的屬性值.版本:1.0

prop : 獲取在匹配的元素集中的第一個(gè)元素的屬性值。版本:1.6+

從概念中發(fā)現(xiàn)操作的對象和使用也好像基本相同,然后帶著疑惑去進(jìn)行了一番實(shí)驗(yàn)并去查閱了一些相關(guān)資料

示例代碼

全選單選單選單選單選單選單選
$(".checkAll").click(function() {
  $(".item").attr("checked", this.checked);
});
問題描述

當(dāng)全選按鈕選中時(shí)單選按鈕全部選中,當(dāng)全選按鈕不選中時(shí)單選按鈕全部不選中,只點(diǎn)全選按鈕時(shí),反復(fù)幾次都沒問題,但是要是點(diǎn)擊了其中一個(gè)單選按鈕,那這個(gè)單選按鈕就不會(huì)在像其它單選按鈕一樣跟隨全選按鈕的狀態(tài)的改變而改變。

attr 和 prop 的本質(zhì)

attrattribute 的縮寫,propproperty 的縮寫,都有屬性的意思,只不過 attr 是操作 html 文檔節(jié)點(diǎn)屬性,prop 是操作 js 對象屬性. attr 在 js 中使用的是 setAttributegetAttributeprop 直接使用原生 js 的 element[value]element[value]=key。

attr 和 prop 的區(qū)別

attr 設(shè)置的屬性值只能是字符串類型,如果不是字符串類型,也會(huì)調(diào)用其 toString() 方法,將其轉(zhuǎn)換成字符串類型。

prop 設(shè)置的屬性值可以包括數(shù)組和對象在內(nèi)的任意類型

有關(guān)布爾值的屬性

1.6 之后, attr 返回的也是字符串類型, 選中或禁用直接返回 checked,selected,disabled。否則返回undefined。解決我問題的關(guān)鍵就是下面一句話

jQuery 認(rèn)為:attribute 的 checked、selected、disabled 就是表示該屬性初始狀態(tài)的值,property 的 checked、selected、disabled 才表示該屬性實(shí)時(shí)狀態(tài)的值(值為 true 或 false)。

當(dāng)涉及到 boolean 值時(shí),比如 checkbox 這樣的,有 truefalse 這樣的布爾值的元素屬性,attributes 在頁面加載的時(shí)候就被設(shè)置,并且一直保持初始值,而 properties 則存儲著元素屬性的當(dāng)前值。

所以當(dāng)我沒有點(diǎn)擊單選按鈕的時(shí)候,它就是沒被用戶點(diǎn)擊過的瀏覽器剛加載出來的初始狀態(tài),此時(shí)可以通過 attr 去設(shè)置并操控,當(dāng)有用戶點(diǎn)擊的時(shí)候,當(dāng)前按鈕就不是初始狀態(tài),attr自然也就無法操控。

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://m.hztianpu.com/yun/113260.html

相關(guān)文章

  • prop attr 一些羞的事情

    摘要:設(shè)置的屬性值可以包括數(shù)組和對象在內(nèi)的任意類型有關(guān)布爾值的屬性之后返回的也是字符串類型選中或禁用直接返回。當(dāng)涉及到值時(shí),比如這樣的,有和這樣的布爾值的元素屬性,在頁面加載的時(shí)候就被設(shè)置,并且一直保持初始值,而則存儲著元素屬性的當(dāng)前值。 引言 前幾天做一個(gè)迷你京東小項(xiàng)目的時(shí)候涉及到一個(gè)全選的小功能,一開始用的是 attr,但是效果完全不是自己想要的,當(dāng)商品按鈕點(diǎn)擊過一次后,attr就無法對...

    simon_chen 評論0 收藏0
  • 動(dòng)手寫個(gè)React高階組件

    摘要:作用是給組件增減屬性。如果你的高階組件不需要帶參數(shù),這樣寫也是很的。那么需要建立一個(gè)引用可以對被裝飾的組件做羞羞的事情了,注意在多個(gè)高階組件裝飾同一個(gè)組件的情況下,此法并不奏效。你拿到的是上一個(gè)高階組件的函數(shù)中臨時(shí)生成的組件。 是什么 簡稱HOC,全稱 High Order Component。作用是給react組件增減props屬性。 怎么用 為什么不先說怎么寫?恩,因?yàn)槟闫鋵?shí)已經(jīng)用...

    xiaokai 評論0 收藏0
  • 新手的node爬蟲初體驗(yàn)

    摘要:后來在爬取不到讓我一度懷疑人生的時(shí)候巧合下,發(fā)現(xiàn)磁力鏈接有小寫字母,有長度的,有長度的。。 原文博客: 羞羞的node爬蟲 前言 學(xué)了一陣子node,除了用 express 寫東西,就沒怎么做過東西突然就想寫個(gè) 爬蟲 來玩一玩,而且還是爬一些羞羞的東西 使用模塊 SuperAgent 是個(gè) http 方面的庫,可以發(fā)起 get 或 post 請求。 cheerio 大家可以理解成一個(gè) ...

    wemallshop 評論0 收藏0

發(fā)表評論

0條評論

閱讀需要支付1元查看
<