注冊

selectorQuery.in,選擇第一個匹配選擇器selector的節(jié)點

2020-09-27
導讀:在當前頁面下選擇第一個匹配選擇器 selector 的節(jié)點,返回一個 NodesRef 對象實例,可以用于獲取節(jié)點信息。 selector 類似于CSS的選擇器,但僅支持下列語法。 ID選擇器: #the-id class選擇器...

在當前頁面下選擇第一個匹配選擇器selector的節(jié)點,返回一個NodesRef對象實例,可以用于獲取節(jié)點信息。

selector類似于CSS的選擇器,但僅支持下列語法。

  • ID選擇器:#the-id
  • class選擇器(可以連續(xù)指定多個):.a-class.another-class
  • 子元素選擇器:.the-parent > .the-child
  • 后代選擇器:.the-ancestor .the-descendant
  • 跨自定義組件的后代選擇器:.the-ancestor >>> .the-descendant
  • 多選擇器的并集:#a-node, .some-other-nodes

selectorQuery.selectAll(selector)

selectorQuery.in,選擇第一個匹配選擇器selector的節(jié)點

在當前頁面下選擇匹配選擇器selector的節(jié)點,返回一個NodesRef對象實例。 與selectorQuery.selectNode(selector)不同的是,它選擇所有匹配選擇器的節(jié)點。

selectorQuery.selectViewport()

選擇顯示區(qū)域,可用于獲取顯示區(qū)域的尺寸、滾動位置等信息,返回一個NodesRef對象實例。

nodesRef.boundingClientRect([callback])

添加節(jié)點的布局位置的查詢請求,相對于顯示區(qū)域,以像素為單位。其功能類似于DOM的getBoundingClientRect。返回值是nodesRef對應的selectorQuery。

返回的節(jié)點信息中,每個節(jié)點的位置用left、right、top、bottom、width、height字段描述。如果提供了callback回調函數(shù),在執(zhí)行selectQuery的exec方法后,節(jié)點信息會在callback中返回。

示例代碼:

Page({
  getRect: function(){
    wx.createSelectorQuery().select('#the-id').boundingClientRect(function(rect){
      rect.id      // 節(jié)點的ID
      rect.dataset // 節(jié)點的dataset
      rect.left    // 節(jié)點的左邊界坐標
      rect.right   // 節(jié)點的右邊界坐標
      rect.top     // 節(jié)點的上邊界坐標
      rect.bottom  // 節(jié)點的下邊界坐標
      rect.width   // 節(jié)點的寬度
      rect.height  // 節(jié)點的高度
    }).exec()
  },
  getAllRects: function(){
    wx.createSelectorQuery().selectAll('.a-class').boundingClientRect(function(rects){
      rects.forEach(function(rect){
        rect.id      // 節(jié)點的ID
        rect.dataset // 節(jié)點的dataset
        rect.left    // 節(jié)點的左邊界坐標
        rect.right   // 節(jié)點的右邊界坐標
        rect.top     // 節(jié)點的上邊界坐標
        rect.bottom  // 節(jié)點的下邊界坐標
        rect.width   // 節(jié)點的寬度
        rect.height  // 節(jié)點的高度
      })
    }).exec()
  }
})

更多微信小程序開發(fā)教程,關注hi小程序。

重磅推薦:小程序開店目錄

第一部分:小商店是什么

第二部分:如何開通一個小商店

第三部分:如何登錄小商店

第四部分:開店任務常見問題

第五部分:小商店可以賣什么

第六部分:HiShop小程序特色功能

第七部分:小程序直播

第八部分:小程序收貨/物流

第九部分:小程序怎么結算

第十部分:小程序客服

第十一部分:電商創(chuàng)業(yè)

第十二部分:小程序游戲開發(fā)