【发布时间】:2017-11-19 22:01:11
【问题描述】:
我有一个文本区域,用户可以在其中输入一些文本,有时他们会在其中使用一些 html 以使其看起来更好。有时这会出错,所以我尝试通过添加一些具有功能的图像来让他们更容易。就像在 <b> <i> <u> <del> 标签中换行一样。这很好用。只是现在我希望他们添加 url,这就是我卡住的地方。
我想要什么:
我想要一个带有标题栏和网址栏的弹出窗口。按OK 后,我希望文本出现在用户离开光标的文本区域中。 textarea 中的文本需要看起来像<a href="' + url + '" rel="external">' + title + '</a>。如果用户选择了一些文本,我希望它出现在弹出标题字段中。
- 如果按下
add link按钮,脚本需要查看文本区域中是否有选择 - 如果有选择,脚本会记住这一点
- 弹出窗口打开
- 在弹出窗口的标题输入中出现选择。
- 用户填写url
- 用户按下确定按钮
- 弹出窗口消失,所选文本被链接替换
- 链接看起来像
<a href="' + url + '" rel="external">' + title + '</a>
这是我的一些代码:
function wrapAsLink(url) {
var textArea = $('.area'),
len = textarea.value.length,
start = textarea.selectionStart,
end = textarea.selectionEnd,
sel = textarea.value.substring(start, end),
replace = '<a href="'+url+'" rel="external">' + sel + '</a>';
textarea.value = textarea.value.substring(0,start) + replace + textarea.value.substring(end,len);
$('.area').keyup();
}
还有一个fiddle
【问题讨论】:
标签: javascript jquery