当前位置:  开发笔记 > 编程语言 > 正文

你如何在jQuery中处理oncut,oncopy和onpaste?

如何解决《你如何在jQuery中处理oncut,oncopy和onpaste?》经验,为你挑选了3个好方法。

在jQuery文档说,库有内置支持下列活动:模糊,焦点,负载,调整大小,滚动,卸载,单击,DBLCLICK,鼠标按下,鼠标松开,鼠标移动,鼠标悬停,鼠标移开,了mouseenter,鼠标离开,改变,选择,提交,keydown,按键,键盘和错误.

我需要处理剪切,复制和粘贴事件.怎么做到最好?FWIW,我只需要担心WebKit(幸运的是我!).

更新:我正在类似仪表板的环境中处理"小部件".它使用WebKit,因此它(这是为了我的目的)是否真的很重要,这些事件是否在那里被支持,它看起来就像它们一样.



1> Már Örlygsso..:

您可以使用.on()off()方法添加和删​​除任何类型的事件

比如试试这个

jQuery(document).on('paste', function(e){ alert('pasting!') });

jQuery实际上对浏览器是否支持您分配的事件类型无动于衷,因此您可以将任意事件类型分配给元素(和常规对象),例如:

jQuery('p').on('foobar2000', function(e){ alert(e.type); });

如果是自定义事件类型,则必须.trigger()在代码中"手动"使用它们,如下所示:

jQuery('p').trigger('foobar2000');

整洁啊?

此外,要以跨浏览器兼容的方式使用专有/自定义DOM事件,您可能需要使用/编写"jQuery事件插件"...其中的示例可以在 jquery.event.wheel.jsBrandon Aaron的Mousewheel插件



2> dansays..:

Javascript中提供了各种剪贴板事件,但支持很多.QuicksMode.org有一个兼容性网格和测试页面.事件不是通过jQuery公开的,因此您必须扩展库或使用本机Javascript事件.



3> Josh Bush..:

Mozilla支持"输入"事件,我很难找到有用的文档.至少,我知道它会粘贴.

   this.addEventListener('input',
    function(){//stuff here},
    false
   );


在IE 9中,如果删除文本(使用键盘或右键单击|剪切),则不会触发输入事件.在Chrome和FF中它确实如此.好的工作,微软!
推荐阅读
郑谊099_448
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有