1
ljbha007 2013-01-28 00:33:23 +08:00
$(".content").live('paste', function (e) {
var self = this; var prev_len = $(self).text().length; setTimeout(function() { var now_len = $(self).text().length; var paste_values = $(self).text().slice(prev_len, now_len - prev_len); var new_values = $.htmlClean(paste_values, { format: true,allowedTags:["a",] });//清除HTML格式 。 $(self).text(new_values); },0); }); |
2
ljbha007 2013-01-28 00:34:23 +08:00 1
$(".content").live('paste', function (e) {
var self = this; var prev_len = $(self).text().length; setTimeout(function() { var now_len = $(self).text().length; var paste_values = $(self).text().slice(prev_len, now_len - prev_len); var old_values = $(self).text().slice(0, prev_len); var new_values = $.htmlClean(paste_values, { format: true,allowedTags:["a",] });//清除HTML格式 。 $(self).text(old_values + new_values); },0); }); |
4
NemoAlex 2013-01-28 11:17:03 +08:00
标题这什么字?怎么读啊?
楼主用的什么输入法?“粘贴”都打不出来么? |
5
yeelone OP @ljbha007 HI,想再请问你一个问题,因为黏贴嘛,是黏贴在光标的位置 ,但是如上代码中,是默认认为黏贴的内容是在最后,但有时候是在中间某个位置 ,所以如何做到,把黏贴的内容插入到光标位置之后呢?
我在想,先取出光标之前的内容,光标之后的内容 ,再 把黏贴的内容 插入在中间。 但是问题,我不知道怎么取出光标的位置 ,在网上找了很多代码,都没有用。 比如 : $.fn.getCursorPosition = function() { var el = $(this).get(0); var pos = 0; if('selectionStart' in el) { console.log('selectionStart'); pos = el.selectionStart; } else if('selection' in document) { console.log('selection'); el.focus(); var Sel = document.selection.createRange(); var SelLength = document.selection.createRange().text.length; Sel.moveStart('character', -el.value.length); pos = Sel.text.length - SelLength; } return pos; } 两个if 都没有进去。 |
6
ljbha007 2013-01-28 11:21:57 +08:00
|
7
kamal 2013-01-28 12:41:37 +08:00
获取/设置光标位置 http://jsbin.com/ibiwa6/1/edit
|
8
yangg 2013-01-28 13:00:30 +08:00
提一下,建议不要再使用jQuery的live方法,建议使用on或者delegate
http://jquery.com/upgrade-guide/1.9/#live-removed |
12
kamal 2013-01-28 13:31:57 +08:00
|
13
yeelone OP @kamal 请问,如何 在 pasteHtmlAtCaret(html) 里,取得粘贴的内容? 有没有哪个方法提供了这样的功能 ?
|
14
kamal 2013-01-28 18:52:13 +08:00
这个代码库把有关拷贝粘贴的功能都封装好了
http://code.google.com/p/rangy/ |
15
isy 2013-01-28 21:50:32 +08:00
最新版本的 jQuery 把 live 事件去掉了
|