Javascript JS:检查浏览器是否支持焦点选项

Javascript JS:检查浏览器是否支持焦点选项,javascript,html,google-chrome,firefox,Javascript,Html,Google Chrome,Firefox,是否有任何方法(不使用用户代理和类似工具)检测.focus()支持focusOptions,例如:preventsroll:true 我在Chrome中使用这个: element.focus({ preventScroll: true }); 当然,除了Chrome和Opera之外,这在任何地方都不起作用。 但是我怎么能检测到呢?比如: try { window.focus().preventScroll } catch {...} 有可能吗?您可以尝试以下方法: let sup

是否有任何方法(不使用
用户代理
和类似工具)检测
.focus()
支持focusOptions,例如:
preventsroll:true

我在Chrome中使用这个:

element.focus({
  preventScroll: true
});
当然,除了Chrome和Opera之外,这在任何地方都不起作用。 但是我怎么能检测到呢?比如:

try { window.focus().preventScroll } catch {...}
有可能吗?

您可以尝试以下方法:

    let supported = false;

    document.createElement('div').focus({
        get preventScroll() {
            supported = true;

            return false;
        },
    });

    console.log(supported);

我可以想出一种方法,但它涉及(可能)滚动,也可能由于用户操作而返回假阴性,因此…没有帮助。@T.J.Crowder您能解释一下吗?确保您在视口底部有输入,发出调用,并查看滚动位置是否更改。如果它支持,则浏览器不支持
preventScroll
,或者用户碰巧进行了滚动。如果没有,可能浏览器支持它。