如何检测浏览器支持requestFullscreen

2024-01-02

如何检测浏览器支持requestFullscreen or not?

我有下面这些代码可以使 chrome、safari、firefox 和 opera(不完全工作)使文档全屏显示,但我想检测浏览器支持requestFullscreen或不。我应该怎么办?

 $('.button-fullscreen').click(function(){ 

    var docElm = document.documentElement;

    // W3C Proposal
    if (docElm.requestFullscreen) {
        docElm.requestFullscreen();
    }

    // mozilla proposal
    else if (docElm.mozRequestFullScreen) {
        docElm.mozRequestFullScreen();          
    }

    // Webkit (works in Safari and Chrome Canary)
    else if (docElm.webkitRequestFullScreen) {
        docElm.webkitRequestFullScreen(); 
    }

    return false;
});

$('.button-sound').click(function(){               

    // W3C Proposal
    if (document.exitFullscreen) {
        document.exitFullscreen();
    }

    // mozilla proposal
    else if (document.mozCancelFullScreen) {
        document.mozCancelFullScreen();
    }

    // Webkit (works in Safari and Chrome Canary)
    else if (document.webkitCancelFullScreen) {
        document.webkitCancelFullScreen();
    }

    return false;
});

当你把if (docElm.requestFullscreen),您正在检测浏览器是否支持该方法,因为如果requestFullscreen定义在docElmobject.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何检测浏览器支持requestFullscreen 的相关文章

  • 如何在javascript中显示目录中的所有图像?

    我想在 javascript 的帮助下动态显示目录中的所有图像 我怎样才能做到这一点 我不认为这是可能的 但如果您向 ASP NET 或 PHP 或类似 页面发出 AJAX 请求 它们可以列出文件夹中的文件并将其返回以供 Javascrip
  • 未捕获的引用错误:i 未定义

    我正在尝试在我的数组上创建一个 for 循环 var lists a b c d JS for i 0 i lt lists length i console log lists i sa report btn lists i click
  • 无法从本地文件夹运行 Jquery

    你好 我是网络开发新手 我需要与JQuery 即使我已经成功尝试过一个jquery但仅在将文件复制到我的在线 ftp 文件夹后 我完全无法从本地文件夹运行它 请解释一下 如何我可以测试一些新脚本吗 进行额外的练习将文件复制到 ftp 文件夹
  • 在 Woocommerce 的单个产品页面中添加产品注释字段

    我要创建定制订单备注 in 单品用户的详细信息页面 这个可以使用 php 来完成 无需插件 我已附上屏幕截图和网站 URL 以供参考 已尝试使用此代码function php它在结账页面上工作 而不是在产品信息页 任何人都可以帮助我实现这一
  • 在移动浏览器或 PhoneGap 应用程序之间进行检测

    是否可以使用 JavaScript 检测用户是否通过浏览器或应用程序进行访问 我正在通过网页和 PhoneGap 应用程序开发适用于多个移动操作系统的混合应用程序 目标是 独立于部署目标使用相同的代码 仅当用户代理是应用程序时添加 Phon
  • 为什么我必须将所有脚本放入 jquery mobile 中的index.html

    我在我的phonegap jquerymobile 项目中使用 mobile changepage 进行重定向 然而让我困惑的是我需要将所有页面的脚本放在同一个文件index html中 如果不是 则重定向页面无法执行其标头中的函数 例如
  • 使用 fadeIn() 时,jQuery“未捕获类型错误:未定义不是函数”;

    我是 JS 新手 正在编写一个基本的富含 jQuery 的网页 其中同一文档中的每个页面都具有淡入 淡出功能 使用具有单独 ID 的相同 div 元素 无论如何 当我尝试淡入当前页面时 我收到错误 未捕获的类型错误 未定义不是函数 我在网上
  • jquery 验证最小长度规则不起作用

    我有一个带有密码字段的表单 密码长度必须至少为 8 个字符
  • AngularJS 与(Angular JS + jQuery)

    我有一个关于仅使用 AngularJS 和纯 JavaScript 以及使用 AngularJS 和 jQuery 时的性能问题 ex app directive fitHeight function window return restr
  • IE8 上 json 解析失败

    json gt 返回的响应 msg div p Unfortunately we were unable to process your application p br Please upload a CV br div status e
  • jQuery document read() 函数可能需要很长时间才能执行

    我的问题是 有时一段 JavaScript 通常是 Google Analytics 可能需要很长时间才能加载 尽管 HTML 准备好 遍历和操作 并不重要 如果我使用以下代码 document ready function p text
  • bootstrap-datetimepicker 仅显示日期

    我正在用这个repo https github com smalot bootstrap datetimepicker由 smalot 提供 我只想选择并显示日期 对于其他一些地方 我显示数据和时间 因此选择此存储库 我可以设法仅使用它来选
  • 在成功回调之前修改 JSONP 结果

    我想从外部服务加载一些 JSON 数据 然而 它提供 foo bar useful 而我真正关心的是 有用 的部分 我需要将那部分传递给success打回来 我正在尝试使用Deferred一次从多个数据源加载 类似this https st
  • 在 Chrome 中使用 animate.css 时出现全屏视频问题

    我有一个页面 其中包含使用视频标签的视频 另外 我的页面使用 animate css 向我的元素添加一些动画 问题是 当我在 animate css 中使用样式时 我的视频无法正确全屏显示 这是我的页面的示例 div div class g
  • HighStocks 可拖动元素干扰 gridster 拖动

    我正在使用 HighStocks 和 gridster 的股票图表 gridster 中的每个单独的块都可以自由拖动 然而 股票时间滑块小工具也可以拖动和调整大小 由于它位于 gridster 小部件的顶部 因此每当我拖动滑块时 整个小部件
  • JQuery 找不到我的元素。为什么?

    更新 愚蠢的我没有注意到案例不准确 我为此苦苦挣扎了 30 多分钟 而你们在不到 5 分钟的时间里就看到了我的问题 感谢您为我节省了很多悲伤 无论如何 我对编程还是个新手 我需要学习如何留意这样的小事情 但非常感谢 它甚至没有闪过我的脑海
  • 如何使用 jquery 验证这种格式 (yyyy-mm-dd) 的日期?

    我正在尝试验证以下格式的日期 yyyy mm dd 我找到了这个解决方案 但它的格式不符合我的需要 如 mm dd yyyy 这是该解决方案的链接 http jsfiddle net ravi1989 EywSP 848 http jsfi
  • JQuery AJAX 使用 SOAP Web 服务 [关闭]

    Closed 这个问题是无法重现或由拼写错误引起 help closed questions 目前不接受答案 我一直在尝试学习 JQuery 使用 AJAX 来使用我不久前编写的 SOAP Web 服务 下面是我正在使用的代码
  • 我可以在 .split() 之后直接访问数组的第二个值吗?

    我有这个代码 var tmp this attr id split 我想将分割后的第二个值存储在 tmp 上 因此 如果 this attr id hello marco 我想在 tmp 中存储值 marco 而不是数组 当然 我想直接用一
  • 垂直滚动,与 div/元素/锚点对齐/对齐

    我发现了一些可爱的网站 http www mini jp event campaign big point http www mini jp event campaign big point http www twenty8twelve c

随机推荐

  • setTimeout 函数以错误的顺序运行[重复]

    这个问题在这里已经有答案了 当我按顺序执行下面三行时 它们按顺序输出3 1 2 如果订单不是3 2 1 因为第一条线的延迟比第二条线长 1ms vs 0ms setTimeout gt console log 1 1 setTimeout
  • EXCEL 多位异或

    我有两个单元格 其中包含一串位 0111010 和 0101011 我想将两者异或在一起 以便得到的单元格为 0010001 我知道你可以用它来表示布尔值 OR AND A1 NOT A2 AND A2 NOT A1 但它不适用于一串位 您
  • 为什么c++中没有多方法? [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我读了很多关于如何在 C 中实现多方
  • 如何在 iOS 中的共享首选项中保存 cookie?

    如何在 iOS 中的共享首选项中保存 cookie 以及以后如何提取它 我想保存 cookieHTTPCookieStorage shared cookies进入用户默认值 然后提取 请用 Swift 3 回答 试试这个代码 Store f
  • 如何使用 Google 地图搜索我自己的位置数据(与地点搜索 API 功能相同,但针对我自己的“地点”)

    查看相关问题 谷歌地图自定义本地搜索 搜索控件 https stackoverflow com questions 3386841 google maps custom local search search control 我知道我可以创
  • 为什么大括号初始化器的自动类型推导和模板类型推导不同?

    我明白 给定一个支撑初始化器 auto将推导出一个类型std initializer list 而模板类型推导将会失败 auto var 1 2 3 type deduced as std initializer list
  • 自定义适配器中的位置错误

    我创建了一个定制适配器管理一些Buttons每个里面ListView物品 如果我向下滚动列表并单击按钮 适配器就会采取错误的位置 LISTVIEW item 1 item 2 item 3 item 4 item 5 item 6 item
  • 如何以编程方式调用 Maven 任务

    我在另一个构建工具 Clojure 的 leiningen 但这不重要 的上下文中使用 Maven 我想知道如何调用像依赖 构建类路径 http maven apache org plugins maven dependency plugi
  • 在序言中随机播放

    我正在尝试在序言中编写一个过程 其中如果 L1 1 2 3 且 L2 4 5 6 那么 L3 1 4 2 5 3 6 so shuffle 1 2 3 4 5 6 1 4 2 5 3 6 到目前为止我有这个 shuffle X Y X Y
  • golang - 反射包中的 Elem 与间接

    来自文档 func v Value Elem Value Elem 返回接口 v 包含的值或指针 v 指向的值 如果 v 的 Kind 不是 Interface 或 Ptr 它会发生恐慌 如果 v 为零 则返回零值 func Indirec
  • PasswordHash 无法与 CodeIgniter 一起使用

    我已经把我下载的文件放在了http www openwall com phpass http www openwall com phpass to application libraries 在我的控制器中 我使用这段代码 params a
  • Java中如何手动进行长时间Full GC

    如何编写一些代码将对象分配到 Old Gen 中 从而导致 Full GC 时间超过三五秒 将对象分配到 Old Gen 中 和 长 GC 暂停 很难结合起来 因为你可以对垃圾收集器做的最糟糕的事情就是创建大量小的 链接的 活动的对象 形成
  • 多重排序的 URL 查询字符串约定

    我有一个 RESTful Web 应用程序 支持对项目集合进行多个排序字段 是否存在将这些排序字段编码到 URL 的查询字符串中的通用约定 我正在考虑如下的模式 http myapp com books sort author asc da
  • 如何在c#中获取组合键

    How can I capture Ctrl Alt K P keys on a C form thanks 这是一个和弦 如果不记住看到和弦的第一个击键 就无法检测到它 这有效 public partial class Form1 For
  • gitlab runner 请求的 URL 返回错误:403

    我目前正在使用 gitlab com 不是本地安装 及其多运行程序进行 CI 集成 这在我的一个项目中效果很好 但在另一个项目中却失败了 我的主机使用的是 2012R2 MSBuild 版本为 14 0 23107 0 我知道下面的错误显示
  • 将函数映射到两个输入列表

    我有一个函数想要用多组输入进行测试 假设函数是 f a gt b gt c 现在我有两个输入列表 inputA a inputB b For inputA i 我要评价f input i对于列表中的每个元素inputB i 我知道我需要几个
  • React - 预填充表单

    我需要预先填充一个表单 以便用户可以编辑他们之前创建的博客 我正在寻找在 React 中执行此操作的最佳实践方法 我目前正在通过 props 将值传递给组件 然后将状态属性设置为等于 props 属性 但我读到这是一种反模式 我理解 真理之
  • 使用属性名称设置属性值[重复]

    这个问题在这里已经有答案了 可能的重复 我可以使用 Reflection 设置属性值吗 https stackoverflow com questions 7718792 can i set a property value with re
  • 在 React Native 中,redux 状态在内存中保留多长时间

    我试图了解如何在我的反应本机应用程序中管理 redux 状态 特别是 我试图弄清楚当我的应用程序最小化或设备关闭时会发生什么 有了这些知识 我就可以最好地找出如何持久化状态 并为重置 redux 状态可能出现的任何非法状态做好准备 如果重置
  • 如何检测浏览器支持requestFullscreen

    如何检测浏览器支持requestFullscreen or not 我有下面这些代码可以使 chrome safari firefox 和 opera 不完全工作 使文档全屏显示 但我想检测浏览器支持requestFullscreen或不