粘贴事件修改内容并将其返回到同一位置
Paste event modify content and return it at the same place
我创建了这个jsfiddle,试图解释我想做什么
http://jsfiddle.net/nonyck/tyyCN/$('.autoresize').bind('paste', function(e) {
e.preventDefault();
var data = e.originalEvent.clipboardData.getData('text');
if(data.match("http://.*?.(jpg|png|gif)")) {
$('.autoresize').val($('.autoresize').val() + "<image src='" + data + "' >");
} else {
$('.autoresize').val( $('.autoresize').val() + data);
}
});
我尝试的是得到粘贴事件,然后修改它并将其返回到焦点所在的位置,而本例只是将内容返回到末尾。
如果用户在第2行,并粘贴了一些内容,将修改后的内容放在那里,而不是放在文档的末尾。
是否有一种方法可以在正确的位置返回值?
您可以使用jQuery在文本区域内获得插入符号的位置,以确定用户想要粘贴文本的位置:光标在文本区的位置(字符索引,而不是x/y坐标)
然后将数据插入该位置。参见更新的小提琴:http://jsfiddle.net/tyyCN/1/
if(data.match("http://.*?.(jpg|png|gif)")) {
var caret = $(this).getCursorPosition();
var insert = "<image src='" + data + "' >";
var val = $('.autoresize').val();
$('.autoresize').val(val.substring(0, caret) + insert + val.substring(caret, (val.length)));
}
相关文章:
- 如何将返回的值应用于多个不同位置的多个选择器
- 为更改的输入返回插入符号位置的逻辑
- float's未返回到移动视图结束后的位置
- Sammy.js缓存和滚动位置时,返回历史
- 谷歌位置api获取细节,并不是每个地方都返回
- 在从索引位置返回的字符串中查找空白
- 为什么 javascript 返回对象位置 true 或 false
- 地理位置无法返回确认
- 需要呈现MongoDB查询返回结果的特定索引/位置
- 计算地理位置距离返回 NaN
- 为什么&此脚本返回的位置未定义
- JSON获取地理位置在HTML中未返回值
- 如何解析html以删除元素并只返回其位置的标题
- 当向上滚动时,使Div返回到其原始位置
- 谷歌自动完成API首先返回我所在州的位置;预期的“;地方
- Javascript 函数返回位置 [0] 中的整个数组
- 打开/返回位置权限对话框
- 如果php返回位置头,我如何在jquery ajax中定位页面
- 领英Javascript SDK无法返回位置
- Deezer JS API返回位置:http://www.mydomain.com.br/dz/channel.html