我在我的應用程序中創建了一些快捷方式。如果我打開chrome並直接進入我的網站,而不先打開其他選項卡,則快捷方式按預期工作(關鍵是:ctrl + shift + T)。如果我先打開其他選項卡,然後進入我的網站,則選項卡歷史記錄會填充我訪問的以前的選項卡。因此,我的快捷方式不起作用,而不是打開下拉菜單,它會打開歷史記錄中的選項卡。用JS代碼清除鉻選項卡歷史
爲此搜索解決方案,人們的建議是「關閉瀏覽器並重新打開它,然後選項卡歷史消失」。但這不是我的解決方案。有什麼辦法可以解決這個問題嗎?我曾嘗試添加到我的代碼中:e.preventDefault();
但這不起作用。我的整個代碼如下所示。
document.onkeydown = function(e) {
var pressedKey = String.fromCharCode(e.which).toUpperCase();
array = isoNS.getArr(); //Array containing IDs and shortcuts
for(var i = 0; i < array.length; i++) {
var objectKey = array[i].objectKey.toUpperCase();
if(e.ctrlKey && e.shiftKey) {
e.preventDefault();
if(pressedKey == objectKey) {
isoNS.injectKey(array[i].objectContainerId);
}
}
}
}
所以我想這就是我想要當用戶按下Ctrl + Shift + T做的,是清除標籤歷史,然後應用Ctrl + Shift + T在我的網站。
Ps。這只是Chrome中的一個問題,而不是其他瀏覽器。
這實在是個不幸的消息。但是,謝謝:-) –