主頁(yè) > 知識(shí)庫(kù) > HTML5自定義屬性的問(wèn)題分析

HTML5自定義屬性的問(wèn)題分析

熱門標(biāo)簽:使用U盤裝系統(tǒng) 阿里云 美圖手機(jī) 檢查注冊(cè)表項(xiàng) 硅谷的囚徒呼叫中心 網(wǎng)站建設(shè) 智能手機(jī) 百度競(jìng)價(jià)點(diǎn)擊價(jià)格的計(jì)算公式

問(wèn)題背景

在頁(yè)面與js傳值中我們經(jīng)常用到data-id="1"的方式,然后通過(guò)e.target.dataset.id取id的值

今天在獲取值時(shí)怎么也取不到

問(wèn)題分析

后來(lái)發(fā)現(xiàn)e對(duì)象有currentTarget和target屬性,而dataset就在currentTarget中,所以通過(guò)e.currentTarget.dataset.id取到了正確的值。

另外data-id="1"最好不要用駝峰命名如:data-Id="1" ,這樣有時(shí)候也取不到值。

HTML5 自定義屬性

網(wǎng)站中經(jīng)常會(huì)看到以data-開(kāi)頭的屬性定義,雖然W3C不認(rèn)定,但最新HTML5規(guī)定data-是合理的,在HTML5中,任何以data-開(kāi)始的都是自定義屬性,通常它用來(lái)實(shí)現(xiàn)一些HTML里沒(méi)有明確定義的元素,把用戶自定義的屬性應(yīng)用到代碼中

微信小程序文檔

什么是事件

事件是視圖層到邏輯層的通訊方式。

事件可以將用戶的行為反饋到邏輯層進(jìn)行處理。

事件可以綁定在組件上,當(dāng)達(dá)到觸發(fā)事件,就會(huì)執(zhí)行邏輯層中對(duì)應(yīng)的事件處理函數(shù)。

事件對(duì)象可以攜帶額外信息,如 id, dataset, touches。

事件的使用方式

在組件中綁定一個(gè)事件處理函數(shù)。

如bindtap,當(dāng)用戶點(diǎn)擊該組件的時(shí)候會(huì)在該頁(yè)面對(duì)應(yīng)的Page中找到相應(yīng)的事件處理函數(shù)。

<view id="tapTest" data-hi="WeChat" bindtap="tapName"> Click me! </view>

在相應(yīng)的Page定義中寫(xiě)上相應(yīng)的事件處理函數(shù),參數(shù)是event。

Page({
  tapName: function(event) {
    console.log(event)
  }
})

可以看到log出來(lái)的信息大致如下:

{
  "type":"tap",
  "timeStamp":895,
  "target": {
    "id": "tapTest",
    "dataset":  {
      "hi":"WeChat"
    }
  },
  "currentTarget":  {
    "id": "tapTest",
    "dataset": {
      "hi":"WeChat"
    }
  },
  "detail": {
    "x":53,
    "y":14
  },
  "touches":[{
    "identifier":0,
    "pageX":53,
    "pageY":14,
    "clientX":53,
    "clientY":14
  }],
  "changedTouches":[{
    "identifier":0,
    "pageX":53,
    "pageY":14,
    "clientX":53,
    "clientY":14
  }]
}

使用WXS函數(shù)響應(yīng)事件

總結(jié)

以上所述是小編給大家介紹的HTML5自定義屬性的問(wèn)題分析,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
如果你覺(jué)得本文對(duì)你有幫助,歡迎轉(zhuǎn)載,煩請(qǐng)注明出處,謝謝!

標(biāo)簽:山南 懷化 煙臺(tái) 賀州 湖北 黃山 湘潭 通遼

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《HTML5自定義屬性的問(wèn)題分析》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266