相关疑难解决方法(0)

JavaScript在粘贴事件上获取剪贴板数据(跨浏览器)

Web应用程序如何检测粘贴事件并检索要粘贴的数据?

我想在将文本粘贴到富文本编辑器之前删除HTML内容.

之后粘贴后清理文本有效,但问题是所有以前的格式都丢失了.例如,我可以在编辑器中编写一个句子并将其设为粗体,但是当我粘贴新文本时,所有格式都会丢失.我想只清理粘贴的文本,并保持以前的格式不变.

理想情况下,该解决方案应适用于所有现代浏览器(例如,MSIE,Gecko,Chrome和Safari).

请注意,MSIE有clipboardData.getData(),但我找不到其他浏览器的类似功能.

javascript clipboard cross-browser

281
推荐指数
10
解决办法
33万
查看次数

如何从一开始就以字符形式在textarea中获取插入符号列(不是像素)的位置?

如何在<textarea>使用JavaScript中获得插入位置?

例如: This is| a text

这应该回来了7.

如何让它返回光标/选择周围的字符串?

例如:'This is', '', ' a text'.

如果突出显示"是"一词,那么它将返回'This ', 'is', ' a text'.

javascript textarea cursor caret

174
推荐指数
2
解决办法
16万
查看次数

jQuery绑定到Paste Event,如何获取粘贴的内容

我有一个jquery令牌tagit插件,我想绑定到粘贴事件以正确添加项目.

我能够像这样绑定到粘贴事件:

    .bind("paste", paste_input)
Run Code Online (Sandbox Code Playgroud)

...

function paste_input(e) {
    console.log(e)
    return false;
}
Run Code Online (Sandbox Code Playgroud)

如何获取实际粘贴的内容值?

javascript jquery copy-paste paste

67
推荐指数
5
解决办法
13万
查看次数

如何使用JavaScript检测鼠标右键+粘贴?

有没有办法检测右键点击,然后在IE和Firefox上粘贴JavaScript?

更新:

我决定用Jquery来做:

$('#controlId').bind('paste', null, function() {
    // code
});
Run Code Online (Sandbox Code Playgroud)

这不完全是我所看到的(因为它在"ctrl + v"以及"右键单击+粘贴"中被触发但我可以解决它.

在Chrome,Firefox 3,IE 7和IE 6上进行了测试,它正在运行

javascript jquery

44
推荐指数
4
解决办法
4万
查看次数

jquery如何获取粘贴的内容

我在输入中捕获粘贴文本时遇到一些麻烦:

 <input type="text" id="myid" val="default">
 $('#myid').on('paste',function(){
        console.log($('#myid').val());
 });  
Run Code Online (Sandbox Code Playgroud)

console.log显示:

default
Run Code Online (Sandbox Code Playgroud)

我如何catch粘贴文本并准备使用?

jquery paste

29
推荐指数
2
解决办法
4万
查看次数

将Excel数据粘贴到html表中

使用Javascript,如何创建一个HTML表格,可以从excel(或谷歌电子表格)"接受"数字矩阵数据,通过电子表格中的"复制",然后"粘贴"到浏览器中的表格中.

javascript html-table spreadsheet

24
推荐指数
2
解决办法
4万
查看次数

撤消JS中的覆盖粘贴

我已忽略了该paste事件。我注意到,由于阻止了事件的默认行为,因此当前无法使用Ctrl + Z撤消“粘贴”。

$(this).on('paste', function (evt) {
  // Get the pasted data via the Clipboard API.
  // evt.originalEvent must be used because this is jQuery, not pure JS.
  // /sf/answers/2088211891/
  var clipboardData = evt.originalEvent.clipboardData || window.clipboardData;
  var pastedData = clipboardData.getData('text/plain');

  // Trim the data and set the value.
  $(this).val($.trim(pastedData));

  // Prevent the data from actually being pasted.
  evt.preventDefault();
});
Run Code Online (Sandbox Code Playgroud)

有没有一种方法可以覆盖撤消功能,或者可以做其他不同的操作以使Ctrl + Z起作用?

相关问题

javascript jquery undo paste

11
推荐指数
2
解决办法
293
查看次数

检测html textarea的变化

我想用jQuery监视我的textarea的变化.我可以用keyup事件做到这一点,它完美无缺.但是当用户点击textarea(右键单击)时,我可以获得什么事件,然后选择粘贴?

仅当用户在textarea上单击鼠标左键时才会发生Click事件.

我该如何处理这种情况?

jquery events textarea

9
推荐指数
1
解决办法
8013
查看次数

Event.keyCode不能与'on input'一起使用 - 未定义

目前我正在为项目开发一个功能,而event.keyCode出现对"on input"触发器不起作用.我正在使用Google Chrome 31和jQuery 1.10.2.

这是我在我的方法中尝试的内容:

input.on('input', function(event){
    console.log("event.charCode: " + event.charCode);
    console.log("event.keyCode: " + event.keyCode);
    console.log("event.which: " + event.which);
    console.log("window.event ? event.keyCode : event.which: " + window.event ? event.keyCode : event.which);
});
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

我得到undefined了所有这些方法.我做错了什么或这是一个jQuery/Javascript问题?在这里你可以找到小提琴.

当用户在其中粘贴内容或以任何方式更改输入内容时,我希望我的输入触发.

ps:我的方法按预期工作,唯一不起作用的是......这个.

javascript jquery events input

9
推荐指数
3
解决办法
1万
查看次数

Angular [ngPaste]中的"粘贴"事件

如何在Angular 1.1.5的输入中执行"粘贴"事件的功能?我知道有一个ng-change输入指令.但每次输入更改时它都会触发,我在初始粘贴时只需要一次.

用例:我有一个URL输入.我想在用户粘贴URL后执行一个函数.用户也可以手动输入URL并按Enter键执行该功能.

-

更新:自Angular 1.2.0起,ngPaste是一个原生指令.

javascript angularjs angularjs-directive

8
推荐指数
3
解决办法
2万
查看次数