tencent cloud

Feedback

Last updated: 2024-03-05 15:28:23

    createSelectorQuery

    The application of this API is through SelectorQuery wx.createSelectorQuery().
    Function Description: Returns an instance of the SelectorQuery object. In custom components or pages containing custom components, replace with this.createSelectorQuery().
    Return Value: SelectorQuery.
    Sample Code:
    const query = wx.createSelectorQuery()
    query.select('#the-id').boundingClientRect()
    query.selectViewport().scrollOffset()
    query.exec(function (res) {
    res[0].top // The upper boundary coordinate of the #the-id node.
    res[1].scrollTop // The vertical scroll position of the display area.
    })

    createIntersectionObserver

    The usage of this API is IntersectionObserver wx.createIntersectionObserver(Object component, Object options).
    Function Description: Creates and returns an instance of the IntersectionObserver object. In custom components or pages containing custom components, this.createIntersectionObserver([options]) should be used as a substitute.
    Parameters and Description: Object this
    Custom Component Instance: Object options.
    Option
    Attributes
    Types
    Default value
    Required
    Note
    thresholds
    Array.<number>
    [0]
    Not required
    An array of numerical values, encompassing all thresholds.
    initialRatio
    number
    0
    Not required
    The initial intersection ratio, if the detected intersection ratio at the time of invocation is not equivalent to this value and reaches the threshold, it will trigger a callback function of the listener once.
    observeAll
    boolean
    false
    Not required
    Whether to observe multiple target nodes simultaneously (rather than a single one). If set to true, the targetSelector of observe will select multiple nodes (be aware: selecting too many nodes at once may impact rendering performance).
    Return Value: IntersectionObserver.

    IntersectionObserver

    .relativeTo

    The method is utilized as follows: IntersectionObserver.relativeTo(string selector, Object margins)
    Function Description: Utilize a selector to designate a node, serving as one of the reference areas.
    Parameters and Description: string selector, used to expand (or contract) the boundaries of the reference node layout area.
    Selector: Object margins.
    Attributes
    Types
    Default value
    Required
    Note
    left
    number
    -
    Not required
    The left boundary of the node's layout area.
    right
    number
    -
    Not required
    The right boundary of the node's layout area.
    top
    number
    -
    Not required
    The upper boundary of the node's layout area.
    bottom
    number
    -
    Not required
    The lower boundary of the node's layout area.

    .relativeToViewport

    The method is utilized as IntersectionObserver.relativeToViewport(Object margins).
    Function Description: Designates the page display area as one of the reference regions.
    Parameters and Description: Object margins, utilized to expand (or contract) the boundaries of the reference node's layout area.
    Attributes
    Types
    Default value
    Required
    Note
    left
    number
    -
    Not required
    The left boundary of the node's layout area.
    right
    number
    -
    Not required
    The right boundary of the node's layout area.
    top
    number
    -
    Not required
    The upper boundary of the node's layout area.
    bottom
    number
    -
    Not required
    The lower boundary of the node's layout area.
    Example Code
    In the following example code, if the target node (specified by the selector .target-class) enters 100px below the display area, the callback function will be triggered.
    Page({
    onLoad() {
    wx.createIntersectionObserver().rela

    .disconnect

    The method is utilized as IntersectionObserver.disconnect().
    Function Description: Ceases monitoring, the callback function will no longer be triggered.

    .observe

    The method is utilized as IntersectionObserver.observe(string targetSelector, function callback).
    Function Description: Designates the target node and commences monitoring for changes in intersection status.
    Parameters and Description: string targetSelector.
    Selector: function callback.
    Parameters for the Callback Function Monitoring Intersection Status Changes: Object res.
    Attributes
    Types
    Note
    intersectionRatio
    number
    Intersection Ratio
    intersectionRect
    object
    Boundary of the Intersection Area
    boundingClientRect
    object
    Target Boundary
    relativeRect
    object
    Boundary of the Reference Area
    time
    number
    Timestamp during Intersection Detection
    Structure of
    Attributes
    Types
    Note
    left
    number
    Left Boundary
    right
    number
    Right Boundary
    top
    number
    Upper Boundary
    bottom
    number
    Lower Boundary
    Structure of
    Attributes
    Types
    Note
    left
    number
    Left Boundary
    right
    number
    Right Boundary
    top
    number
    Upper Boundary
    bottom
    number
    Lower Boundary
    Structure of
    Attributes
    Types
    Note
    left
    number
    Left Boundary
    right
    number
    Right Boundary
    top
    number
    Upper Boundary
    bottom
    number
    Lower Boundary

    NodesRef

    .fields

    The method is utilized as NodesRef.fields(Object fields)
    Function Description: Acquire pertinent information of the node. The required fields are specified within 'fields'.
    Parameters and Description: Object fields.
    Attributes
    Types
    Default value
    Required
    Note
    id
    boolean
    false
    Not required
    Whether to return the node id
    dataset
    boolean
    false
    Not required
    Whether to return the node dataset
    rect
    boolean
    false
    Not required
    Whether to return the layout position of the node (left, right, top, bottom)
    size
    boolean
    false
    Not required
    Whether to return the dimensions of the node (width, height)
    scrollOffset
    boolean
    false
    Not required
    Whether to return the scrollLeft scrollTop of the node, the node must be a scroll-view or viewport
    properties
    Array.\\
    -
    Not required
    Specify a list of attribute names to return the current attribute values of the corresponding node (only the regular attribute values marked in the component documentation can be obtained, the attribute values of id, class, style, and event binding cannot be retrieved)
    computedStyle
    Array.\\
    -
    Not required
    Specify a list of style names to return the current values of the corresponding style names for the node
    context
    boolean
    false
    Not required
    Whether to return the corresponding Context object of the node
    Note:
    The priority of computedStyle is higher than size. If width/height is specified in computedStyle and size: true is passed in at the same time, the width/height obtained from computedStyle will be returned preferentially.
    Return Value: The selectorQuery corresponding to nodesRef.

    .boundingClientRect

    The method is used as follows: SelectorQuery NodesRef.boundingClientRect(NodesRef.boundingClientRectCallback callback)
    Function Description: Adds a query request for the layout position of the node. Relative to the display area, in pixels. Its function is similar to the getBoundingClientRect of the DOM.
    Parameters and Description: function callback. This is a callback function. After executing the SelectorQuery.exec method, the node information will be returned in the callback.
    Object res
    Attributes
    Types
    Note
    id
    string
    Node's ID
    dataset
    Object
    Node's dataset
    left
    number
    Node's left boundary coordinate
    right
    number
    Node's right boundary coordinate
    top
    number
    Node's upper boundary coordinate
    bottom
    number
    Node's lower boundary coordinate
    width
    number
    Node's width
    height
    number
    Node's height
    Return Value: SelectorQuery.
    Sample Code:
    Page({
    getRect() {
    wx.createSelectorQuery().select('#the-id').boundingClientRect(function (rect) {
    rect.id // Node's ID
    rect.dataset // Node's dataset
    rect.left // Node's left boundary coordinate
    rect.right // Node's right boundary coordinate
    rect.top // Node's upper boundary coordinate
    rect.bottom // Node's lower boundary coordinate
    rect.width // Node's width
    rect.height // Node's height
    }).exec()
    },
    getAllRects() {
    wx.createSelectorQuery().selectAll('.a-class').boundingClientRect(function (rects) {
    rects.forEach(function (rect) {
    rect.id // Node's ID
    rect.dataset // Node's dataset
    rect.left // Node's left boundary coordinate
    rect.right // Node's right boundary coordinate
    rect.top // Node's upper boundary coordinate
    rect.bottom // Node's lower boundary coordinate
    rect.width // Node's width
    rect.height // Node's height
    })
    }).exec()
    }
    })

    .scrollOffset

    The method is utilized as SelectorQuery NodesRef.scrollOffset(NodesRef.scrollOffsetCallback callback)
    Function Description: Adds a query request for the node's scroll position. Measured in pixels. The node must be a scroll-view or a viewport.
    Parameters and Description: function callback, a callback function, after executing the SelectorQuery.exec method, the node information will be returned in the callback.
    Object res
    Attributes
    Types
    Note
    id
    string
    Node's ID
    dataset
    Object
    Node's dataset
    scrollLeft
    number
    Node's horizontal scroll position
    scrollTop
    number
    Node's vertical scroll position
    Return Value: SelectorQuery.
    Sample Code:
    Page({
    getScrollOffset() {
    wx.createSelectorQuery().selectViewport().scrollOffset(function (res) {
    res.id // Node's ID
    res.dataset // Node's dataset
    res.scrollLeft // Node's horizontal scroll position
    res.scrollTop // Node's vertical scroll position
    }).exec()
    }
    })

    .context

    The method is utilized as follows: SelectorQuery NodesRef.context(NodesRef.contextCallback callback)
    Function Description: Adds a query request for the Context object of the node. Currently supports the acquisition of MapContext.
    Parameters and Description: function callback, a callback function that returns node information after executing the SelectorQuery.exec method.
    Object res。
    Attributes
    Types
    Note
    context
    Object
    Context object corresponding to the node
    Return Value: SelectorQuery.
    Sample Code:
    Page({
    getContext() {
    wx.createSelectorQuery().select('.the-video-class').context(function (res) {
    console.log(res.context) // Context object corresponding to the node. For instance, if the selected node is a <video> component, then a VideoContext object is returned here.
    }).exec()
    }
    })

    .node

    The method is employed as follows: SelectorQuery NodesRef.node(NodesRef.nodeCallback callback)
    Function Description: Acquires the Node instance. Currently supports the acquisition of ScrollViewContext Interface - Scrolling. Also supports the retrieval of Canvas.
    Parameters and Description: function callback, a callback function that returns node information upon the execution of the SelectorQuery.exec method.
    Object res
    Attributes
    Types
    Note
    node
    Object
    Node instance corresponding to the node
    Return Value: SelectorQuery.
    Sample Code:
    Page({
    getNode() {
    wx.createSelectorQuery().select('.canvas').node(function(res){
    console.log(res.node) // Canvas instance corresponding to the node.
    }).exec()
    }
    })

    SelectorQuery

    .exec

    The method is utilized as follows: NodesRef SelectorQuery.exec(function callback)
    Function Description: Executes all requests. The results of the requests are arranged in an array according to the order of the requests and returned in the first parameter of the callback.
    Parameters and Description: function callback, a callback function.
    Return Value: NodesRef.

    .in

    The method is utilized as follows: SelectorQuery SelectorQuery.in(Component component)
    Function Description: Modifies the selection range of the selector to be within the custom component, component. (Initially, the selector only selects nodes within the page range and does not select any nodes within custom components).
    Parameters and Description: Component component, a custom component instance.
    Return Value: SelectorQuery.
    Sample Code:
    Component({
    queryMultipleNodes() {
    const query = wx.createSelectorQuery().in(this)
    query.select('#the-id').boundingClientRect(function (res) {
    res.top // The upper boundary coordinate of the #the-id node within this component.
    }).exec()
    }
    })

    .select

    The method is utilized as follows: NodesRef SelectorQuery.select(string selector)
    Function Description: Selects the first node that matches the selector, selector, on the current page. Returns an instance of a NodesRef object, which can be used to retrieve node information.
    Parameters and Description: string selector, the selector.
    Return Value:NodesRef
    Selector Syntax: The selector is similar to a CSS selector, but only supports the following syntax.
    ID Selector: #the-id.
    Class Selector (multiple can be specified consecutively): .a-class.another-class.
    Child Selector: .the-parent > .the-child.
    Descendant Selector: .the-ancestor .the-descendant.
    Cross-component Descendant Selector: .the-ancestor >>> .the-descendant.
    Union of Multiple Selectors: #a-node, .some-other-nodes.

    .selectAll

    The method is utilized as follows: NodesRef SelectorQuery.selectAll(string selector)
    Function Description: Selects all nodes matching the selector 'selector' within the current page.
    Parameters and Description: string selector, the selector.
    Return Value:NodesRef
    Selector Syntax: The selector is similar to a CSS selector, but only supports the following syntax.
    ID Selector: #the-id.
    Class Selector (multiple can be specified consecutively): .a-class.another-class.
    Child Selector: .the-parent > .the-child.
    Descendant Selector: .the-ancestor .the-descendant.
    Cross-component Descendant Selector: .the-ancestor >>> .the-descendant.
    Union of Multiple Selectors: #a-node, .some-other-nodes.

    .selectViewport

    The method is utilized as follows: NodesRef SelectorQuery.selectViewport()
    Function Description: Selects the display area. This can be used to obtain information such as the size of the display area and the scroll position.
    Return Value:NodesRef

    MediaQueryObserver

    MediaQueryObserver object, utilized for monitoring changes in the media query status, such as whether the interface's length and width are within a specified range.

    .disconnect

    The method is utilized as follows: MediaQueryObserver.disconnect()
    Function Description: Ceases monitoring. The callback function will no longer be triggered.

    .observe

    The method is utilized as follows: MediaQueryObserver.observe(Object descriptor, function callback)
    Function Description: Initiates monitoring of media query changes.
    Parameters and Descriptions:
    Object descriptor, a descriptor for the media query.
    Attributes
    Types
    Default value
    Required
    Note
    minWidth
    number
    -
    Supported
    Minimum page width (in pixels)
    maxWidth
    number
    -
    Supported
    Maximum page width (in pixels)
    width
    number
    -
    Supported
    Page width (in pixels)
    minHeight
    number
    -
    Supported
    Minimum page height (in pixels)
    maxHeight
    number
    -
    Supported
    Maximum page height (in pixels)
    height
    number
    -
    Supported
    Page height (in pixels)
    orientation
    string
    -
    Supported
    Screen orientation (landscape or portrait)
    Function callback, a callback function monitoring the changes in media query status.
    Object res
    Attributes
    Types
    Note
    matches
    boolean
    Whether the current status of the page satisfies the specified media query.
    
    Contact Us

    Contact our sales team or business advisors to help your business.

    Technical Support

    Open a ticket if you're looking for further assistance. Our Ticket is 7x24 avaliable.

    7x24 Phone Support