javascript - webkitRequestFullScreen 不是一个函数

标签 javascript jquery html

当按下 ESC 时,我试图调用一个函数使屏幕再次处于全屏模式。(也就是说,当按下 ESC 时,屏幕进入正常模式。我需要再次使其处于全屏模式)。已识别ESC点击事件再次调用全屏功能,

$(document).ready(function (){
var screen_change_events = "webkitfullscreenchange mozfullscreenchange fullscreenchange MSFullscreenChange";
$(document).on(screen_change_events, function () {
if (!window.screenTop && !window.screenY) {
$("iframe")['webkitRequestFullScreen'](); // Identified that ESC is triggered.So need to make it again fullscreen mode
}else{
//alert("no")
}
});
});

但出现以下错误。

Uncaught TypeError: $(...).webkitRequestFullScreen is not a function

最佳答案

使用 $("iframe")['webkitRequestFullScreen'](); 您正在创建一个 jQuery 对象并尝试调用其“webkitRequestFullScreen”方法,但 jQuery 对象没有此方法- 只有元素对象才可以。

您可以像使用数组一样通过索引来获取 jQuery 对象中的元素(即 $("iframe")[0].webkitRequestFullScreen()),但如果可以的话,最好为您选择的 iframe 元素提供一个唯一的 ID,然后使用它:

在 HTML 中:

<iframe id="myvideo" src="..."></iframe>

在 JavaScript 中:

var elem = document.getElementById("myvideo");
if (elem.webkitRequestFullscreen) {
  elem.webkitRequestFullscreen();
}

另请注意,在方法前添加“webkit”前缀仅适用于基于 Webkit 的浏览器。要查看不同浏览器上可用的不同方法以及如何调用它们,请参阅 MDN docs .

关于javascript - webkitRequestFullScreen 不是一个函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43625499/

相关文章:

javascript - onclick 将多个 div 作为图像保存到一个 zip 文件中

javascript - jQuery AJAX 发送两个请求

javascript - 我想通过控制台执行 ng-click 功能,可以吗?

javascript - 查找未在任何文件中定义的 html 标签的属性值

javascript - 创建对象时调用函数

javascript - 使用 MySql 和 Websocket 协议(protocol)在 Perl 中创建一个小时

php - 在php javascript中查找没有onload函数的动态文本框值的计数字符

javascript - 更有效的方式搜索数组中的多个对象

javascript - 隐藏动态元素功能。 ('hide')

javascript - 如果在 jQuery 中 mouseleave 超过特定时间,则隐藏文本框