Pointer Lock API 提供了三个属性、两个方法、两个事件

Tabel Of Content

  • 属性

    • Document.pointerLockElement
    • Document.onpointerlockchange
    • Document.onpointerlockerror
  • 方法
    • Element.requestPointerLock()
    • Document.exitPointerLock()
  • 事件
    • Document: pointerlockchange
    • Document: pointerlockerror

属性

  • Document.pointerLockElement

    语法

    var element = document.pointerLockElement;

    返回值

    一个元素Element 或者 空值null

  • Document.onpointerlockchange

  • Document.onpointerlockerror

方法

  • Element.requestPointerLock()

    语法

    instanceOfElement.requestPointerLock();

    说明

    Element.requestPointerLock() 方法允许您异步请求指针锁定在给定的元素上。

    要跟踪请求的成功或失败,有必要在文档级别侦听pointerlockchangepointerlockerror事件。

exitpointerlock

语法

document.exitPointerLock();

说明

exitPointerLock()方法异步释放以前通过Element.requestPointerLock请求的指针锁。

要跟踪请求的成功或失败,有必要侦听pointerlockchangepointerlockerror事件。

事件

Document: pointerlockchange

说明

当指针被锁定/解锁时,将触发pointerlockchange事件。

示例

使用addEventListener()

document.addEventListener('pointerlockchange', (event) => {
console.log('Pointer lock changed');
});

使用 onpointerlockchange 事件处理属性:

document.onpointerlockchange = (event) => {
console.log('Pointer lock changed');
};
  • Document: pointerlockerror

    说明

    当锁定指针失败时(出于技术原因或权限被拒绝),将触发pointerlockerror事件。

    示例

    使用addEventListener()

    const para = document.querySelector('p');
    
    document.addEventListener('pointerlockerror', (event) => {
    console.log('Error locking pointer');
    });

    使用 onpointerlockerror 事件处理属性:

    document.onpointerlockerror = (event) => {
    console.log('Error locking pointer');
    };

Pointer Lock API(2/3):属性、方法、事件的更多相关文章

  1. Pointer Lock API(1/3):Pointer Lock 的总体认识

    前言 指针锁定(Pointer Lock),以前也叫鼠标锁定,提供了基于鼠标随时间的移动(如deltaΔ)的输入方法,不仅仅是视窗区域鼠标的绝对位置.指针锁定让你能够访问原始的鼠标移动,将鼠标事件的目 ...

  2. 指针锁定 Pointer Lock API 用法

    指针锁定 Pointer Lock API 通过它可以访问原始的鼠标运动(基于指针的相对位移 movementX / movementY),把鼠标事件的目标锁定到一个特定的元素,同时隐藏视图中的指针光 ...

  3. HTML5 Audio/Video 标签,属性,方法,事件汇总

    HTML5 Audio/Video 标签,属性,方法,事件汇总 (转) 2011-06-28 13:16:48   <audio> 标签属性:src:音乐的URLpreload:预加载au ...

  4. HTML5 Audio/Video 标签,属性,方法,事件汇总 (转)

    HTML5 Audio/Video 标签,属性,方法,事件   <audio> 标签属性:src:音乐的URLpreload:预加载autoplay:自动播放loop:循环播放contro ...

  5. [转帖]HTML5 Audio/Video 标签,属性,方法,事件汇总

    HTML5 Audio/Video 标签,属性,方法,事件汇总 <audio>标签属性: src:音乐的URL preload:预加载 autoplay:自动播放 loop:循环播放 co ...

  6. Pointer Lock API(3/3):一个Demo

    简单的Demo演练 点击跳转至Code Pen以查看演示和源码 完整代码 <!DOCTYPE HTML> <html lang="en-US"> <h ...

  7. vue2.0 配置 选项 属性 方法 事件 ——速查

    全局配置 silent  设置日志与警告  optionMergeStrategies   合并策略  devtools  配置是否允许vue-devtools  errorHandler    错误 ...

  8. [转载]HTML5 Audio/Video 标签,属性,方法,事件汇总

    <audio> 标签属性: src:音乐的URL preload:预加载 autoplay:自动播放 loop:循环播放 controls:浏览器自带的控制条 <audio id=& ...

  9. delphi 常用属性+方法+事件+代码+函数

    内容居中(属性) alignment->tacenter mome控件 禁用最大化(属性) 窗体-> BorderIcons属性-> biMaximize-> False 让鼠 ...

随机推荐

  1. java的权限控制

    java有三个权限的关键字:public.private.protected public:对任何人都可以使用. private:只有类的创建者和内部的方法可以使用,它的导出类也不可以访问. prot ...

  2. url参数格式化

    getQueryBbj = (url)=>{ let urlData = url.split("?")[1]; let queryArr = urlData.split('& ...

  3. http2 技术整理 nginx 搭建 http2 wireshark 抓包分析 server push 服务端推送

    使用 nginx 搭建一个 http2 的站点,准备所需: 1,域名 .com .net 均可(国内域名需要 icp 备案) 2,云主机一个,可以自由的安装配置软件的服务器 3,https 证书 ht ...

  4. HTML5&CCS3(1) 网页的构造块

    HTML用于定义内容的含义,而CSS(Cascading Style Sheet,层叠样式表)用于定义内容和网页如何显示.HTML页面和CSS文件(样式表,stylesheet)都是文本文件,因此很容 ...

  5. 数据结构 - ArrayList

    简介 ArrayList是一个动态数组.ArrayList几乎拥有数组所有优点,例如元素有序,索引访问等:并且一般情况下它还不会越界,添加元素时它能动态扩容.平时工作中ArrayList被我们广泛应用 ...

  6. 把读取sql的结果写入到excel文件

    1.利用pandas模块 # encoding: utf-8 import time import pandas as pd import pymysql def getrel(sql): ''' 连 ...

  7. git重新学习

    一个学习网址:https://learngitbranching.js.org/ 一.对于一个新的远程空仓库 本地新建文件后推送 #初始化 git init #添加文件 git add README. ...

  8. What is the difference between shades and shadows?

    Shade is the darkness of an object not in direct light, while shadows are the silhouette of an objec ...

  9. 关于WPF System.windows.Media.FontFamily 的类型初始值设定项引发异常问题解决方法

    造成原因:此问题的根本原因是.NET Framework January 2018 Rollup(KB4055002)与已安装的.NET Framework 4.7.1产品版本之间的MSI安装交互.R ...

  10. 如何配置 GitHub 为个人的手机图床

    PicPlus 是一个手机端的图床上传工具,支持七牛云.阿里云.又拍云等主流图床配置,同时还支持配置 GitHub.码云作为自己的图床,如下所示: 这篇文章主要介绍如何在 PicPlus 中配置 Gi ...