När man skapar en länk med cmdExec('CreateLink') så öppnas ju denna i samma fönster. Finns det något sätt att fixa till länken med en Target="_blank" så den öppnas i ett nytt fönster?
cmdExec CreateLink
8 svar · 396 visningar · startad av PDahlen
Hur ser funktionen cmdExec ut då?
cmdExec är inte en funktion jag gjort, det är ett befintligt kommando och används t.ex. i javascript WYSIWYG editorer.
t.ex.
cmdExec('CreateLink', false, 'http://www.pdc.se')
skapar en länk i en RTF ruta där man t.ex. markerat ett ord.
Nej men execcommand är det. ;)
Sorry, tänkte för snabbt. Har en cmdExec funktion emellan som sätter ihop själva kommandot beroende på vad man vill göra.
I vilket fall som helst så handlar det om CreateLink och om det går att få med att länken skall öppnas i nytt fönster.
När det gäller options för CreateLink så finns bara True/False för om det ska vara länk eller öppna ett Dialogfönster. Men någon kanske har varit i samma situation och hittat en lösning.
[object].parentElement().target="_blank";
function cmdExec(a, u, url, target){
var sText = document.selection.createRange();
if (!sText==""){
document.execCommand(a,u,url);
if (sText.parentElement().tagName == "A"){
sText.parentElement().target = target;
}
}else{
alert("Please select some text!");
}
};
Skjut med: cmdExec('CreateLink', false, 'http://www.pdc.se', '_blank')
/Se ändring
Då får man lägga in en extra koll bara så man kan lägga in interna länkar också, t.ex. om target=="" eller nåt.
Men funkar denna vilket kommando man än skickar in? Bold t.ex. kräver ju ingen vald text.
testa ;)
cmdExec('Bold', false, 'http://www.pdc.se', '_blank')