Hinzufügen eines target="_blank" mit execCommand 'createlink'

Ich bin versucht, erstellen Sie eine mini-WYSIWYG-editor für ein custom CMS. Es hat die option zum hinzufügen und entfernen von Verknüpfungen. Es fügt links in Ordnung, aber hätte gerne die option zum hinzufügen target="_blank" auf den hyperlink. Auch, wenn möglich, würde ich mag in der Lage sein, um hinzuzufügen alt="" und title="".

Im moment ist mein code:

function addLink() {
    var linkURL = prompt('Enter a URL:', 'http://');
    editorWindow.document.execCommand('createlink', false, linkURL);
}

Gesucht um, und kann nicht scheinen, um eine Lösung zu finden. Die meisten Lösungen, die ich gesehen habe sagen, hinzufügen:

function addLink() {
    var linkURL = prompt('Enter a URL:', 'http://');
    var newLink = editorWindow.document.execCommand('createlink', false, linkURL);
    newLink.target = "_blank";
}

Aber das scheint nicht zu funktionieren. Irgendwelche Vorschläge?

  • Tun Sie wirklich wollen, verwenden Sie die execCommand-Funktion? Warum nicht erstellen Sie einfach einen neuen link-element und fügen Sie es der dom, oder besser noch, jQuery verwenden? => auch, vergessen Sie nicht, zu entkommen, die url, die der Benutzer eingeben können, um zu verhindern, dass mögliche XSS
  • Danke für die Antwort. Nicht genau wissen, wie gehen über diese. Ich weiß, Sie fügen Sie ein neues element erstellen mit document.createElement('a'); und dann hinzufügen setAttribute('target', '_blank');. Das einzige, was ich nicht sehe ist, wie man den link zu dem text hervorgehoben worden.
InformationsquelleAutor thelos999 | 2014-05-22
Schreibe einen Kommentar