【问题标题】:How to force the browser to maximize (like pressing F11) from an NPAPI plugin?如何从 NPAPI 插件强制浏览器最大化(如按 F11)?
【发布时间】:2011-02-28 12:26:19
【问题描述】:

我有一个可编写脚本的 NPAPI 浏览器插件。
我想向 javascript "MaximizeBrowser" 公开一个方法,
这将导致浏览器窗口最大化(就像用户在浏览器中按下 F11 一样)。
有没有办法做到这一点?

所选答案有效(至少在 Windows 上)!
这是我的代码,以防有人需要:

// simulate F11 keyboard key press
keybd_event(VK_F11,MapVirtualKey(VK_F11,0),0,0); 
keybd_event(VK_F11,MapVirtualKey(VK_F11,0),KEYEVENTF_KEYUP,0); 

【问题讨论】:

    标签: npapi browser-plugin


    【解决方案1】:

    当然不支持使用 NPAPI API 的方式,但根据您的目标操作系统,您可以尝试使用操作系统级别的调用来模拟与浏览器的全屏模式匹配的键盘事件。这当然是脆弱的,因为它取决于您所针对的每个浏览器 a) 具有全屏模式,并且 b) 从不更改快捷方式。

    如果您的目标是让您的插件内容全屏显示,也许您应该考虑从您的插件中打开一个全屏窗口,这是其他 NPAPI 插件全屏显示的方式。

    【讨论】:

    • 是的......这几乎是你唯一的选择
    • 好主意,我将模拟 F11 按键。现在已经足够了。
    • 我将其作为演示破解,而不是从我的无窗口插件中打开“真实”全屏。我必须这样做才能在插件内容的顶部显示来自下方浏览器的半透明内容(例如 Flash)。有点复杂...非常感谢。
    【解决方案2】:

    无法使用 JavaScript 将浏览器窗口最大化为全屏。虽然这对于您的真正需求来说是不幸的,但它被认为是一种安全限制。

    【讨论】:

    • 但是 NPAPI 插件不受该沙箱的约束。
    猜你喜欢
    • 2012-01-29
    • 1970-01-01
    • 1970-01-01
    • 2015-08-28
    • 1970-01-01
    • 2017-11-10
    • 1970-01-01
    • 2013-10-03
    • 1970-01-01
    相关资源
    最近更新 更多