XRSession.onselect

Secure context
This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.

The onselect property of the XRSession object is the event handler for the select event, which is dispatched when a primary action is completed successfully by the user. This typically represents the pressing of a button or trigger, a hand gesture, or a spoken command.

The select event is sent after tracking of the primary action begins, as announced by the selectstart event, and immediately before the tracking of the primary action ends, which is announced by the selectend event.

To learn more about how WebXR actions work, see Inputs and input sources.

Syntax

xrSession.onselect = selectHandlerFunction;

Value

An event handler function to be invoked when the XRSession receives a select event.

Example

This example handles select event which occur on the user's main hand (as given by a user object's handedness property); if that value matches the value of the XRInputSource property handedness, we know that the device is held in the user's main hand.

xrSession.onselect = event => {
  let source = event.inputSource;

  if (source.handedness == user.handedness) {
    if (source.targetRayMode == "tracked-pointer") {
      let targetRayPose = event.frame.getPose(source.targetRaySpace, myRefSpace);
      
      if (targetRayPose) {
        myHandleSelectWithRay(targetRayPose);
      }
    }
  }
};

Specifications

Specification Status Comment
WebXR Device API
The definition of 'XRSession.onselect' in that specification.
Working Draft Initial definition.

Browser compatibility

Update compatibility data on GitHub
DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung Internet
onselectChrome Full support 79Edge Full support 79Firefox No support NoIE No support NoOpera No support NoSafari No support NoWebView Android No support NoChrome Android Full support 79Firefox Android No support NoOpera Android No support NoSafari iOS No support NoSamsung Internet Android Full support 11.2

Legend

Full support  
Full support
No support  
No support

See also