Javascript 在Google Chrome中创建一个只能从用户手势内部调用的函数

Javascript 在Google Chrome中创建一个只能从用户手势内部调用的函数,javascript,google-chrome,gesture,Javascript,Google Chrome,Gesture,在Google Chrome中,如果您试图通过在控制台中输入命令进入全屏模式,则会失败,并显示以下错误消息: 未能在“元素”上执行“requestFullscreen”:只能通过用户手势启动API (据我所知)不可能通过模拟点击事件来欺骗这一点。它只有在真实用户操作中触发时才起作用。其他一些内置函数也有这种行为 我能在自己的功能中重现这种行为吗 换句话说,我可以创建一个功能,当真人做出用户手势触发时可以工作,但在任何其他情况下都不能工作吗?在Chrome中,您可以使用Event.isTruste

在Google Chrome中,如果您试图通过在控制台中输入命令进入全屏模式,则会失败,并显示以下错误消息:

未能在“元素”上执行“requestFullscreen”:只能通过用户手势启动API

(据我所知)不可能通过模拟点击事件来欺骗这一点。它只有在真实用户操作中触发时才起作用。其他一些内置函数也有这种行为

我能在自己的功能中重现这种行为吗


换句话说,我可以创建一个功能,当真人做出用户手势触发时可以工作,但在任何其他情况下都不能工作吗?

在Chrome中,您可以使用
Event.isTrusted
()

当用户做出手势时,您可能会将事件传递给处理程序。以下是单击事件的示例:

document.documentElement.onclick=函数(事件)
{
警报(event.isTrusted?“trusted”:“untrusted”);
};
//5秒钟后,执行不受信任的单击

setTimeout(函数(){document.documentElement.click()},5000)@JosiahDaniels Wtf这不是重复的。我问的是如何要求用户在我的功能中使用手势,而不是如何进入全屏模式。@JosiahDaniels我不想欺骗浏览器进入全屏模式。我希望我自己的自定义方法fooBar()只能由用户手势调用。