javascript - 使用 execCommand ="_blank"添加目标 'createlink'

标签 javascript execcommand

我正在尝试为自定义 CMS 创建一个迷你 WYSIWYG 编辑器。它可以选择添加和删除链接。它可以很好地添加链接,但希望可以选择将 target="_blank" 添加到超链接。另外,如果可能的话,我希望能够添加 alt=""title=""

目前这是我的代码:

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

四处寻找,似乎找不到解决办法。我见过的大多数解决方案都说要添加:

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

但这似乎行不通。有什么建议吗?

最佳答案

我找到了解决方案。不知道这是否是正确的方法,但它确实有效。正在关注https://stackoverflow.com/a/5605841/997632 ,这就是我用于我的代码的工作:

function addLink() {
    var linkURL = prompt('Enter a URL:', 'http://');
    var sText = editorWindow.document.getSelection();

    editorWindow.document.execCommand('insertHTML', false, '<a href="' + linkURL + '" target="_blank">' + sText + '</a>');
}

以防万一其他人正在寻找并偶然发现这个...

关于javascript - 使用 execCommand ="_blank"添加目标 'createlink',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23811132/

相关文章:

Jquery select() 并将文本复制到剪贴板不起作用

html - Firefox document.execCommand ('insertText' , ...)

javascript - 样式属性中的 Angular 表达式在 IE 中不起作用

PHP 替代三元运算符

javascript - 从谷歌地图 api url 获取空 json

javascript - 使用 'Firebase.Collection' 数据未保存在 Backbone 应用程序中

javascript - 有比 document.execCommand 更好的东西吗?

javascript - 如何将html表格的大量数据导出为Excel文件

javascript - 如何在 execCommand 所见即所得编辑器上查找选定的文本字体大小和名称

javascript - 灯箱效果(使用最少的 javascript)问题