javascript - IE 11 调用 lockOrientation 时调用对象无效

标签 javascript internet-explorer-11

我有以下代码:

var lockOrientation = screen.lockOrientation || screen.mozLockOrientation || screen.msLockOrientation;
if (lockOrientation) {
    if (lockOrientation("landscape-primary")) {
        // do something
    }
    else{
        // do something else
    }
}

MDN 指定应如何完成:

https://developer.mozilla.org/en-US/docs/Web/API/Screen/lockOrientation

但是,在 IE11 中我收到此错误:

调用对象无效

上线

if(lockOrientation("landscape-primary")) {

有人可以解释一下这里的问题是什么吗?

最佳答案

一位同事找到了解决方案:

在 IE 中,必须在 screen 对象上调用该方法,如下所示:

screen.lockOrientationUniversal = screen.lockOrientation || screen.mozLockOrientation || screen.msLockOrientation;

然后就可以正常工作了。

看来 MDN 需要更新他们的网站。

关于javascript - IE 11 调用 lockOrientation 时调用对象无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31647475/

相关文章:

c# - 如何在C#中访问JS变量

javascript - 查找并更改标签中文本的颜色

javascript - showModalDialog - IE11 忽略对话框高度和对话框宽度

css - 用于 IE11 和 safari 的带有文本剪辑的渐变背景

javascript - 如何为 html5 canvas 添加喷漆工具?

javascript - 自定义 CSS 复选框 jQuery 诱导的 "checked"属性在视觉上不显示 "check"复选框

更改可见性或显示的 CSS 在 IE 11 中不起作用

internet-explorer - 从 IE EPM BHO 中访问命名管道服务器

html - IE 11 不显示嵌入的 base 64 图像

javascript - 按钮放置(添加一组字段,当多于一个字段时启用禁用按钮)