Czasami podczas przeglądania klikam link, przytrzymując klawisz Ctrl, aby otworzyć go w nowej karcie. Jednak zamiast otwierać nową kartę, jest ona klikana i przeglądana w bieżącej karcie, tak jakbym kliknął ją normalnie bez przytrzymywania klawisza Ctrl. Jestem pewien, że przytrzymuję klawisz Ctrl w pełni i że nie ma winy w klawiaturze lub myszy.
Czasami nowa karta zostanie otwarta z linkiem, ale bieżąca karta będzie jednocześnie przeglądać link.
firefox
keyboard-shortcuts
browser
browser-tabs
Coldblackice
źródło
źródło
onclick
operacji, która mogłaby zepsuć się klawiszem Ctrl + kliknięcie. Czy możesz podać konkretny przykład? meta.stackoverflow.com/questions/276138/…<a class="primary" href="/superuser//congress" onclick="var x=".tl(";s_objectID="http://www.nationaljournal.com/congress_1";return this.s_oc?this.s_oc(e):true">Congress</a>
href
atrybut, jest zastępowany przez zdarzenie onclick.Odpowiedzi:
JavaScript za kulisami
Dzieje się tak, gdy twórcy takich stron internetowych przechwytują kliknięcia myszy za pomocą JavaScript i wykonują asynchroniczne żądania sieciowe wewnątrz przechwytywacza, potencjalnie w celu śledzenia kliknięć. Kiedy asynchroniczne połączenie sieciowe powraca, JS dokonuje przekierowania programowego, używając czegoś takiego:
window.location.href = url;
To programowe przekierowanie zawsze ładuje stronę na tej samej karcie, nawet jeśli przytrzymasz Ctrl( Cmdna Macu).
Do przesłonięcia użyj MiddleMouse
Kliknięcie środkowym przyciskiem myszy lub wybranie opcji „otwórz w nowej karcie” z menu kontekstowego całkowicie ominie przechwytujący kod JavaScript i otworzy łącze, jakby w ogóle nie było kodu JavaScript.
źródło
Napisałem dodatek do przeglądarki Firefox (nudno) o nazwie link-fixer, aby to naprawić. Możesz zainstalować z addons.mozilla.org . Wymaga przeglądarki Firefox 48.0 lub nowszej.
Cytując siebie:
Po zainstalowaniu nie musisz nic więcej robić. Możesz przytrzymać klawisz Ctrl + kliknięcie dowolnego łącza, a otworzy się ono w nowej karcie. Rozwiąże również odmianę problemu opisanego w drugim akapicie.
źródło
Weźmy ten link jako przykład:
The
href
Atrybut, w tym przypadku, jest stworzenie łącza pseudo dla czytelności (Pozwoli to również link do pracy nawet wtedy, gdy JavaScript jest wyłączony). Powodem tego jest to, żeonclick
atrybut zawsze działa jako pierwszy. Duże witryny, takie jak Google, robią to, aby śledzić kliknięcia i próbować uniemożliwić użytkownikowi odwiedzanie witryn zawierających złośliwe oprogramowanie. Z tego powodu Ctrl+ kliknięcie nie działa. Jeśli jednak użyjesz środkowego przycisku myszy, prawie zawsze działa.źródło