Hallo,
ich habe ein kostenloses Theme (Debut) und möchte einen link auf einen neuen Tab starten, weil er zu einem externen Video auf Youtube führt.
Ist das möglich? Wenn ja, bitte wie?
Gruss Larissa
Gelöst! Zur Lösung
Hallo @Larissa8
wo genau möchtest du den link setzen?
Mario
@Larissa8 möchtest du vielleicht, dass sich alle externen Links in einem neuen Fenster öffnen?
Hi @Larissa8,
folgende JS-Zeile erledigt das für Dich – Du verwendest Debut, damit ist der jedenfalls kompatibel:
jQuery(document).ready(function(e){jQuery("a[href^='http']:not([href^='https://"+window.location.hostname.toLowerCase()+"'])").attr({target: "_blank"});});
Der einfachste (wenn auch nicht zwingendermaßen sauberste) Weg, den Code zu integrieren ist, wenn Du ihn am Ende der Datei assets/theme.js einfügst.
Liebe Grüße,
Mario
edit: hab das noch etwas verkürzt
Hi @Larissa8
das sieht gut aus. jQuery ist an dieser Stelle noch nicht verfügbar … dann müssen wir's auf vanilla JS umbauen. Statt der einen Zeile setz bitte diesen Code ein …
function targetBlank() {
var internal = location.host.replace("www.", "");
internal = new RegExp(internal, "i");
var a = document.getElementsByTagName('a');
for (var i = 0; i < a.length; i++) {
var href = a[i].host;
if (!internal.test(href)) {
a[i].setAttribute('target', '_blank');
}
}
};
targetBlank();
(Quelle: https://gist.github.com/allybee/5871749)
Lg, Mario
sorry, geht immer noch nicht. Siehe Screenshot. oder war das die falsche Stelle, denn das mit "vanilla" habe ich nicht gefunden, also habe ich wieder theme.js ausgewählt.
Hast du noch Ideen? So will ich es keinesfalls lassen, denn dann sind die Leute ja erstmal weg von der Shopseite...
VG Larissa
Benutzer | Anzahl |
---|---|
76 | |
10 | |
7 | |
6 | |
6 |