我在我的Chrome擴展中有這麼一小段代碼,所以我可以使用<div href="url">
作爲鏈接。 這用於直到最近才按預期工作。 (左 - 在當前選項卡中打開,中間 - 在新選項卡中打開)。現在它只註冊左鍵單擊。中間按鈕點擊事件
$('div.clickable-href').on('click', function(e) {
switch(e.which) {
case 1:
window.location = $(this).attr('href');
break;
case 2:
window.open($(this).attr('href'));
break;
case 3:
break;
}
});
我用<div href="url">
和<span href="url">
的鏈接,以便瀏覽器不顯示狀態欄。
我發現了一些類似的問題,但所有的答案建議使用.on('mousedown', (e) => {...})
。只有在發生mousedown
事件後mouseup
事件時,才需要觸發此事件。
更令人沮喪的是,這曾用於,但它不再這樣做。
編輯:
這是爲Chrome 55在Linux(在這裏我首先注意到的異常)的Chrome已經更新到V55的問題。在我的Windows系統上,它是v54,並且中間點擊正在工作。從54更新到55導致了相同的問題。
請注意,用戶可能希望您的「鏈接」在做ap時也在新標籤頁中打開rimary點擊持有密鑰(在Mac上爲)。你也必須處理這些情況,以及可能的其他特定於平臺的約定,這是你無法預料的。嘗試找到一種方法來爲鏈接使用真正的錨點元素,並讓瀏覽器最好地處理它。 –