覆盖默认的ctrl+v和右键粘贴事件的实现

我用的kindeditor版本是3.5.1,客户的需求是希望在编辑器的窗口内执行ctrl+v或者右键粘贴的时候,要把多余的HTML等代码过滤掉,只保留文本,相当于"粘贴为无格式文本"控件所做的那样.摸索了几天,终于实现了.实现方式如下:

 

1、注释掉kindeditor.js文件的193行

//this.add(newElement, 'paste', handler, id);

 

2、在kindeditor.js中的KE.create函数结束前(即2881行),加上下面的代码

        function pasteHandler(e){
         e.returnValue=false;
         KE.event.stop(e);
         KE.plugin['plainpaste'].click(id);
        };
        var newElement = (iframeDoc.nodeName == '#document') ? iframeDoc.body : iframeDoc;
        KE.event.add(newElement, 'paste', pasteHandler, id);

 

说明:pasteHandler函数是ctrl+v或者右键粘贴的时候执行的方法,这里为了浏览器的通用性,调用了"粘贴为无格式文本"控件的函数。如果不需要考虑浏览器的通用性的话,可以在pasteHandler里直接和剪切贴交互,类似于下面这样的代码(需经过修改后才可用)。

        function pasteHandler(e){
         e.returnValue=false;
         KE.event.stop(e);


        var html = window.clipboardData.getData();

  html = KE.util.escape(html);
  html = html.replace(/ /g, ' ');
  html = html.replace(/\r\n|\n|\r/g, "<br />$&");
  KE.util.insertHtml(id, html);
  KE.util.focus(id);         

        };

在Ubuntu终端中,默认情况下右键不能用于复制和粘贴操作。然而,你可以通过以下方法来实现右键复制粘贴的功能: 1. 使用快捷键:在终端中,你可以使用Ctrl+Shift+C来复制选中的文本,使用Ctrl+Shift+V来粘贴文本。这是在Ubuntu终端中常用的快捷键组合,可以替代Windows中的Ctrl+C和Ctrl+V操作。\[1\] 2. 使用鼠标中键:在终端中,你可以使用鼠标中键来粘贴文本。首先,选中要复制的文本,然后在需要粘贴的位置点击鼠标中键即可完成粘贴操作。\[1\] 3. 修改终端设置:如果你希望使用右键进行复制和粘贴操作,你可以修改终端的设置。具体步骤如下: - 打开终端,点击终端窗口的菜单栏,选择“Edit”(编辑)。 - 在下拉菜单中选择“Preferences”(首选项)。 - 在弹出的对话框中,选择“Shortcuts”(快捷键)选项卡。 - 在“Shortcuts”选项卡中,找到“Copy”(复制)和“Paste”(粘贴)的设置。 - 将这两个设置修改为你想要的快捷键,例如将“Copy”设置为右键,将“Paste”设置为Shift+右键。 - 点击“Close”(关闭)按钮保存设置。 - 现在你可以使用右键进行复制和粘贴操作了。\[2\] 通过以上方法,你可以在Ubuntu终端中实现右键复制和粘贴的功能,使其与Windows统一起来。同时,如果你使用罗技鼠标,你还可以尝试配置罗技鼠标的侧键来实现复制和粘贴操作。\[3\] #### 引用[.reference_title] - *1* *3* [如何优雅的在ubuntu终端中使用复制粘贴](https://blog.csdn.net/qq_42910871/article/details/122507819)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [ubuntu20.04.3LTS 实现gnome终端选中复制右键粘贴功能](https://blog.csdn.net/fenglllle/article/details/120631569)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值