Ich habe diesen Code in meiner Chrome-Erweiterung, sodass ich <div href="url">
als Link verwenden kann. Dies funktioniert bis vor kurzem wie erwartet. (Links - im aktuellen Tab öffnen, Mitte - im neuen Tab öffnen). Jetzt registriert es nur noch linke Klicks.Mittlere Schaltfläche Klickereignis
$('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;
}
});
Ich benutze <div href="url">
und <span href="url">
für Links damit der Browser nicht auf die Statusleiste nicht angezeigt.
Ich habe einige ähnliche Fragen gefunden, aber alle Antworten schlagen vor, .on('mousedown', (e) => {...})
zu verwenden. Ich brauche dieses Ereignis, um nur auszulösen, wenn es ein mousedown
Ereignis gefolgt von einem mouseup
Ereignis gab.
Was noch frustrierender ist, ist dass funktioniert, aber es nicht mehr so funktioniert.
EDIT:
Dies ist ein Problem für Chrome 55. Unter Linux (wo ich zum ersten Mal die Anomalie bemerkt) Chrome wurde bereits v55 aktualisiert. Auf meinem Windows-System war es v54, und der mittlere Klick funktionierte. Die Aktualisierung von 54 auf 55 verursachte die gleichen Probleme.
Beachten Sie, dass Benutzer erwarten können, dass Ihr "Link" auch in einem neuen Tab geöffnet wird, wenn Sie ap machen rimary click mit Schlüssel ( auf Mac). Sie müssen auch mit diesen Fällen und anderen plattformspezifischen Konventionen umgehen, die Sie nicht vorhersehen können. Versuchen Sie, einen Weg zu finden, ein echtes Ankerelement für Ihren Link zu verwenden, damit der Browser es am besten handhaben kann. –