![](/img/trans.png)
[英]Sanitizing paste event using jQuery in contentEditable div
[英]jquery on input paste in contenteditable div
我的html页面中有一个contenteditable div作为textarea:
<div id="txt" contenteditable="true"></div>
我通过jQuery“输入粘贴”检测到用户的输入
$('#txt').on('input paste',function(event){
alert("ok");
});
它在chrome中工作正常,但在IE中不起作用。 谁能告诉我发生了什么事? 谢谢~~
IE浏览器返回event.type
作为paste
$('#txt').on('input paste',function(event){
if(event.type=='paste' || event.type=='input'){
alert("ok");
}
});
编辑。 由于某种原因,我只测试了粘贴。
$('#txt').on('keyup paste',function(event){
alert("ok");
});
我认为这是特定于IE的问题。 替代解决方案是使用焦点,抠像事件和模糊事件。 您可以比较新旧文本,以查看文本中是否存在更改。
刚发现一个SO线程,给定答案与我的答案对齐; 以及指向原始SO线程的链接。
$('#txt').on('focus', function() {
before = $(this).html();
}).on('blur keyup paste', function() {
if (before != $(this).html()) { $(this).trigger('change'); }
});
$('#txt').on('change', function() {alert('changed')});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.