Hur ser funktionen cmdExec ut då?
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?
8 svar · 400 visningar · startad av PDahlen
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?
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')