所以,我需要以程序方式按 Ctrl + Shift + Del 。 我希望我的分机按 Ctrl + Shift + Del ,然后按 Enter (清理所有历史记录,cookie,缓存等)。 我接下来做的事:
var e=document.createEvent('KeyboardEvent');
e.initKeyEvent( 'keypress', true, true, window, true, false, true, false, 46, 0);
document.dispatchEvent(e);
根据我的理解,此代码必须模拟按 Ctrl + Shift + Del 但没有任何反应...... document.dispatchEvent(e)发生,但按 Ctrl + Shift + Del 调用的窗口不会出现。为什么呢?
。p。我知道Components.classes["@mozilla.org/cookiemanager;1"].getService(Components.interfaces.nsICookieManager).removeAll();
但它不适合我的情况。
我确实需要“按”组合 Ctrl + Shift + Del
那么......有什么想法?看错了吗?
答案 0 :(得分:2)
模拟按键事件以启动浏览器的本机功能听起来像是一个糟糕的,可能是不必要的想法。
为什么不查看清除缓存/历史记录的其他扩展程序,例如this one,并查看其source code,看看它是如何完成的。
答案 1 :(得分:0)
如何打开 Ctrl + Shift + Del 的弹出窗口?
编辑:它是chrome://browser/content/sanitize.xul
。您可能还想查看chrome://browser/content/sanitize.js
。