Tastaturkürzel (Shortcuts) für Hyperlinks

  • Durch Zufall habe ich entdeckt, dass ich "Tastaturkürzel anpassen" dazu nutzen kann, meine Favoriten per shortcut aufzurufen. Ich mache das mit Javascript. Kennt jemand noch einen anderen Weg?

    Ich bin so vorgegangen.

    "Tastaturkürzel anpassen" -> Bearbeitungsmodus anzeigen -> Neu
    "Name" und "Tastenkombination" eingetragen und folgendes Javascript unter "Befehl" eingetragen:

    Zitat

    javascript:s=window.getSelection();if(!s||s==''){for(i=0;i<frames.length;i++){s=frames[i].window.getSelection();if(s&&s!='')break;}}if(!s||s=='')void(s=prompt('Erst das Wort markieren oder eingeben:',''));if(s&&s!=''){dw=window.open('http://www.dict.cc/?bm=1&s='+esca…,scrollbars=yes');dw.focus();}


    Mit diesem Script wird eine Seite bei dict.cc für Deutsch-English-Übersetzungen aufgerufen. Konkret, wenn ich auf einer Internetseite einen Begriff markiere und meinen Tastaturbefehl drücke, erscheint ein neues Fenster mit der Übersetzung des Begriffs. Sehr praktisch.

    Das also funktioniert. Super!

    Aber wie lautet der Befehl, um einen Link in einem neuen Tab zu öffnen?

    Ein Beispiel, wie ich es nicht will:

    Zitat


    Das öffnet Google News, aber nicht in einem Tab, sondern in einem neuen Fenster.

    Hat jemand ne Idee?

  • Das hier:

    Code
    javascript:s=window.getSelection();if(!s||s==''){for(i=0;i<frames.length;i++){s=frames[i].window.getSelection();if(s&&s!='')break;}}if(!s||s=='')void(s=prompt('Erst das Wort markieren oder eingeben:',''));if(s&&s!=''){dw=window.open('http://www.dict.cc/?bm=1&s='+escape(s));dw.focus();}


    öffnet bei mir einen neuen Tab und kein neues Fenster.

    meine Einstellungen:
    Neue Seiten sollen geöffnet werden -> In neuem Tab

  • Hi folks,

    Zitat von Patu

    [...] Aber wie lautet der Befehl, um einen Link in einem neuen Tab zu öffnen? [...]

    Einen direkten Befehl zum Öffnen eines Fensters in einem neuen Tab gibt es nicht!

    Man kann lediglich über lokale Einstellungen Einfluss darauf nehmen, wie/wo neue Fenster geöffnet werden sollen. Es gibt in diesem Zusammenhang folgende 3 Einstellungen:

    • browser.link.open_external
      Legt fest, wo Links aus anderen Programmen geöffnet werden sollen:

        2: diese Links werden in einem neuen Fenster geöffnet
        3: Links aus anderen Anwendungen werden in neuen Tabs geöffnet * default in meinem Standardprofil des FX 2.0
        1 (oder alles andere) (Standard): Im zuletzt aktiven Tab

    • browser.link.open_newwindow
      Legt fest, wo Links, die eigentlich neue Fenster öffnen würden, geöffnet werden

        2 (Standard): In einem neuen Fenster
        3: In einem neuen Tab * default in meinem Standardprofil des FX 2.0
        1 (oder alles andere): Im aktiven Tab/Fenster

    • browser.link.open_newwindow.restriction
      Legt fest, ob und welche durch JavaScript geöffneten neuen Fenster entsprechend des Wertes der Einstellung browser.link.open_newwindow "umgeleitet" werden.

        0 (Standard bis Firefox 1.0.*): Alle von JavaScript geöffneten neuen Fenster werden gemäß browser.link.open_newwindow umgeleitet.
        1: Belasse alle Fenster, die von JavaScript geöffnet werden, als Fenster. (Standardverhalten des IE)
        2 (Standard ab Firefox 1.5): Von JavaScript geöffnete Fenster, die bestimmte Einstellungen (wie die Größe oder die Statusleiste) verändern, werden als Fenster belassen. Andere neue Fenster werden gemäß browser.link.open_newwindow umgeleitet. * default in meinem Standardprofil des FX 2.0

    Diese 3 Einstellungen haben bei einem neu angelegten Profil zunächst folgende Werte (man beachte den Unterschied zu den Default-Angaben oben in der Beschreibung; das ist lediglich die 1:1 Übersetzung aus der MozillaZine Knowledge Base. Die Standardwerte in einem neu angelegten FX2.0 Profil sind die mit Sternchen gekennzeichneten.):

      browser.link.open_external: 3
      browser.link.open_newwindow: 3
      browser.link.open_newwindow.restriction: 2

    browser.link.open_external (Link) ist klar, die regelt nur das Verhalten für Fenster, die von externen Programmen (eMail-Client etc) geöfnet werden.

    browser.link.open_newwindow.restriction (Link) mag etwas verwirrend sein. Diese Einstellung bestimmt lediglich, welche der durch JavaScript geöffneten Fenster "umgeleitet" werden, bestimmt aber nicht, wie diese "umgeleitet" werden, denn das legt wiederum die Einstellung browser.link.open_newwindow fest!

    Beispiele (Links aus externen Anwendungen lasse ich mal unberücksichtigt):
    Soll niemals ein Link ein neues Fenster öffnen, sondern immer nur neue Tabs bzw. im selben Tab, dann muss man folgende Kombination wählen:

      browser.link.open_newwindow: 3
      browser.link.open_newwindow.restriction: 0


    Sollen grundsätzlich alle JavaScript gesteuerten Fenster wirklich auch in neuen Fenstern geöffnet werden, dann muss:

      browser.link.open_newwindow.restriction: 1
      browser.link.open_newwindow: Wert ist egal


    Sollen diejenigen JavaScript gesteuerten Fenster, für die eine Veränderung (Fenstergröße, keine Scrollbalken, keine Menüleiste, etc.) vorgesehen ist, wirklich auch in neuen Fenstern geöffnet werden, die anderen, deren "Eigenschaften" nicht verändert werden (durch JavaScript), aber gemäß des Wertes von browser.link.open_newwindow behandelt werden, dann muss:

      browser.link.open_newwindow.restriction: 2
      browser.link.open_newwindow: Wert ist egal


    Wie man (verborgene) Einstellungen des Firefox ändert, findest du im Firefox-Wiki beschrieben unter:


    Manche - aber nicht alle - dieser Einstellungen werden auch von Erweiterungen wie beispielsweise Tab Mix Plus (TMP) (Link)

    Have fun,
    NightHawk

  • Vielen Dank für die ausführliche Erklärung, NightHawk56.

    Allerdings sind meine config-Einstellungen so, dass sie nach Deiner Beschreibung java-generierte Webseiten grundsätzlich in Tabs öffnen sollten. Tun sie aber nicht.

    Zitat

    browser.link.open_external: 3
    browser.link.open_newwindow: 3
    browser.link.open_newwindow.restriction: 0

    Ich probier mal weiter.
    Vielen Dank jedenfalls.

  • Hi Patu,

    Zitat von Patu

    Allerdings sind meine config-Einstellungen so, dass sie nach Deiner Beschreibung java-generierte Webseiten grundsätzlich in Tabs öffnen sollten. Tun sie aber nicht.

    Wenn bei mir diese Werte eingestellt sind und im verwendeten Profil (Link) keine weiteren Erweiterungen vorhanden sind, die möglicherweise auf das Verhalten von Tabs/Fenstern eingreifen, dann wird durch

    Code
    javascript:open('http://news.google.de/')

    entsprechende Seite in einem neuen Tab geöffnet. Ein neues Fenster öffnet sich nur dann, wenn "browser.link.open_newwindow" den Wert 2 hat.

    Wenn du keine Erweiterungen installiert hast, hat möglichweise dein Profil 'ne Macke. Dann solltest du testweise ein Neues Profil (Link) ausprobieren. Falls du aber Erweiterungen installiert hast, kannst du zunächst mal im Safe Mode (Link) testen, ob dann das Verhalten anders (also korrekt: so, wie von mir beschrieben) ist.

    Have fun,
    NightHawk