你的代码:
var xxx = $('#container');
xxx.msRequestFullscreen();
这是错误的,因为您试图在 jQuery 对象上调用 DOM 方法。
jQuery 调用就像$('#container')
返回 jQuery 对象一样。您可以使用这些对象做很多事情,但您不能做的一件事是调用标准 DOM 方法。为此,您需要一个实际的 DOM 对象。
jQuery 对象包含一组匹配的 DOM 对象,如果有多个匹配元素,您可以通过[0]
第一个对象和, 等方式访问这些对象。[1]
因此,您可以通过如下更改第二行来拨打电话:
xxx[0].msRequestFullscreen();
这将调用msRequestFullscreen()
DOM 元素而不是 jQuery 元素,这应该适合你。
在这种情况下,您甚至根本不需要 jQuery,因为您没有使用任何 jQuery 功能。您可以简单地document.getElementById('container')
首先使用获取 DOM 对象而不是 jQuery 方法。然后你就不需要[0]
第二行的语法了,因为你已经得到了 DOM 对象。
最后,您当然要小心,因为这是 IE 特有的方法;名称前面的ms
告诉您这一点,这意味着您的代码将无法在其他浏览器中运行,即使它们支持相同的功能。您需要以跨浏览器的方式进行。这里有一些关于如何做到这一点的提示:How to make the window full screen with Javascript (stretching all over the screen)