精华内容
下载资源
问答
  • 方便在网页上使用复制粘贴的文章 因为网页的设计者为了想他网页上的内容被复制复制的方法还是有很多的。
  • 1、鼠标右键点击元素节点,如果没有选中元素节点中的内容,则点击复制复制整个元素节点 2、如果元素节点内容被选中则复制元素节点中选中的内容 3、点击剪切,复制元素节点,删除原有节点 4、点击粘贴则会把复制...

    功能分析:

    1、鼠标右键点击元素节点,如果没有选中元素节点中的内容,则点击复制会复制整个元素节点

    2、如果元素节点内容被选中则复制元素节点中选中的内容

    3、点击剪切,复制元素节点,删除原有节点

    4、点击粘贴则会把复制的内容粘贴到鼠标点击的位置

    5、点击删除会删除点击的节点

    代码:

    <!DOCTYPE html>
    <html lang="en">
    
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Document</title>
        <style>
            * {
                margin: 0;
                padding: 0;
            }
            
            div,
            p {
                width: 200px;
                height: 200px;
                border: 1px solid royalblue;
                margin-left: 10px;
                margin-top: 50px;
            }
            
            p {
                border: 1px solid red;
            }
            
            body {
                background-color: #eeee;
                height: 2000px;
            }
            
            ul {
                padding: 10px 0;
                display: none;
                border: 1px solid;
                list-style: none;
                box-shadow: 2px 1px 2px 2px rgba(0, 0, 0, .2);
                width: 140px;
                position: absolute;
                background-color: #fff;
            }
            
            li {
                font-size: 18px;
                /* text-align: center; */
                padding: 5px 0 5px 20px;
                line-height: 24px;
            }
            
            li:hover {
                background-image: radial-gradient(907px at 3.4% 19.8%, rgb(255, 243, 122) 0%, rgb(255, 102, 145) 97.4%);
            }
            
            #son1 {
                width: 100px;
                height: 100px;
                background-color: salmon;
            }
            
            .center {
                margin: 0 auto;
                width: 800px;
                height: 800px;
                border: 1px solid aqua;
            }
        </style>
        <script>
            window.onload = function() {
                var box = document.querySelector("ul");
                var son = document.querySelector("#son");
                var f = document.querySelector(".f")
                    // 阻止右键菜单
                document.oncontextmenu = function(event) {
                        var event = event || window.event;
                        if (event.preventDefault) {
                            event.preventDefault();
                        } else {
                            event.returnValu = false;
                        }
                    }
                    // 自定义
                var div = null;
                var newDiv = null;
                var str = "";
                var boxs = null;
                document.onmousedown = function(event) {
                    var event = event || window.event;
                    var target = event.srcElement || event.target;
                    // 判断按下的是否为右键
                    if (event.button == 2) {
                        // 显示菜单
                        box.style.display = "block";
                        // 菜单位置等于,鼠标点击位置
                        box.style.left = event.pageX + "px";
                        box.style.top = event.pageY + "px";
                        if (target.nodeName != "BODY") {
                            str = SelectText();
                            console.log(str);
                            if (str) {
    
                            } else {
                                // 清除上次复制
                                str = "";
                                div = target;
                            }
                        }
                    } else if (event.button == 0) {
                        // 隐藏菜单
                        box.style.display = "none";
                        // 删除
                        if (target.className == "d") {
                            if (div != null) {
                                div.remove();
                            }
                        }
                        // 复制、粘贴
                        if (target.className == "f" || target.className == "c") {
                            // 点击复制
                            if (target.className == "f") {
                                // 清空中间变量
                                newDiv = null;
                                if (str) {
                                    //创建span存放复制的内容
                                    boxs = document.createElement("span");
                                    boxs.innerHTML = str;
                                }
                                if (div != null) {
                                    // 克隆点击元素节点
                                    newDiv = div.cloneNode(true);
                                }
    
    
                            } else if (target.className == "c") {
                                // 点击粘贴
                                if (str) {
                                    boxs = document.createElement("span");
                                    boxs.innerHTML = str;
                                    // 存放复制内容节点插入
                                    document.body.appendChild(boxs);
                                    // 根据鼠标箭头位置粘贴存放文字的节点
                                    boxs.style.position = "absolute";
                                    boxs.style.left = event.pageX + "px";
                                    boxs.style.top = event.pageY + "px";
                                } else if (newDiv != null) {
                                    newDiv = div.cloneNode(true);
                                    document.body.appendChild(newDiv);
                                    // 根据鼠标箭头位置粘贴节点
                                    newDiv.style.position = "absolute";
                                    newDiv.style.left = event.pageX + "px";
                                    newDiv.style.top = event.pageY + "px";
                                }
                            }
                        }
                        // 剪切
                        if (target.className == "j") {
                            newDiv = div.cloneNode(true);
                            div.remove();
                        }
                    }
                };
    
                function SelectText() {
                    try {
                        var selecter = window.getSelection().toString();
                        if (selecter != null && selecter.trim() != "") {
                            return (selecter);
                        }
                    } catch (err) {
                        var selecter = document.selection.createRange();
                        var s = selecter.text;
                        if (s != null && s.trim() != "") {
                            return s;
                        }
                    }
                }
                //替换文本前与后的空格
                String.prototype.trim = function() {
                    return this.replace(/(^\s*)|(\s*$)/g, "");
                }
            }
        </script>
    </head>
    
    <body>
        <ul id="box">
            <li class="f">复制</li>
            <li class="c">黏贴</li>
            <li class="j">剪切</li>
            <li class="d">删除</li>
        </ul>
        <div class="center">
            <div>时间不在于你拥有多少,而在于你怎样使用</div>
            <div>我曾踏足山巅,也曾跌落低谷,二者都让我受益良多</div>
            <p>断剑重铸之,骑士归来之时</p>
        </div>
    </body>
    
    </html>

     

    展开全文
  • 以chrome 浏览器访问某网页例,点击右键,没有反应,没有弹出菜单,进行 选择、复制。 怎么办,最好的方法是安装 chrome 插件。 第一步:查找商店,选择合适的 插件程序 ... 第二步:输入 copy,查找合适的 插件 ...

    以 chrome 浏览器访问某网页为例,鼠标点击右键,没有反应,没有弹出菜单,可以进行 选择、复制功能。 怎么办,最好的方法是安装 chrome 插件。 

    第一步:查找商店,选择合适的 插件程序 

    https://chrome.google.com/webstore/category/extensions?hl=zh-CN 

    第二步:输入 copy,查找合适的 插件 

     第三步:选择下载次数最多的,下载了几个,最后发现 Simple Allow Copy 效果最好 

    第四步:选择 扩展程序 ,注意有两个按钮:

    点击 最左侧 图标,插件生效, 再次点击,图标灰色,插件功能失效。

    右侧 钉子 的图标,生效,变成蓝色,插件会一直出现在 浏览器的条上,使用非常方便。

    插件管理界面,这样进入   

    总结:chrome 浏览器这么多年的开发积累,很多功能已经到了非常好用,流畅的程度,值得我们花些时间,好好学习,提升效率。 

    展开全文
  • VBA窗体中实现右键菜单功能, 主要是常用的复制、粘贴、剪切的实现
  • 点击鼠标右键以后,不会像正常电脑一样出现“查看、排序、刷新、新建“等内容菜单,反而是一直转圈,紧接着会白屏,然后就会正常返回桌面(三五秒内完成,时间持续长)。
  • 解决vim中鼠标右键无法复制的问题

    千次阅读 2016-02-05 17:53:13
    转自:... 阅读目录(Content) 选择缓冲区和剪切板原格式粘贴vim中的复制vim文件间复制粘贴完美方案 转:http://www.cnblogs.com/jianyungsun/archive/2011/03/19/1988855.html

    间接转自:http://www.cnblogs.com/jianyungsun/archive/2011/03/19/1988855.html


    Vim作为最好用的文本编辑器之一,使用vim来编文档,写代码实在是很惬意的事情。每当学会了vim的一个新功能,就会很大地提高工作效率。有人使用vim几十年,还没有完全掌握vim的功能,这也说明了vim的强大。而这样何尝不是一件好事呢,只要有的学习,就有的提高。

    最近使用Vim来写博客,发现在Vim中粘贴Python代码后,缩进就全乱了。仔细研究了以下,原来是自动缩进的缘故,于是做如下设置: 

    :set noai nosi

    取消了自动缩进和智能缩进,这样粘贴就不会错行了。但在有的vim中不行,还是排版错乱。

    后来发现了更好用的设置:

    :set paste

    进入paste模式以后,可以在插入模式下粘贴内容,不会有任何变形。这个真是灰常好用,情不自禁看了一下帮助,发现它做了这么多事:

    • textwidth设置为0
    • wrapmargin设置为0
    • set noai
    • set nosi
    • softtabstop设置为0
    • revins重置
    • ruler重置
    • showmatch重置
    • formatoptions使用空值

    下面的选项值不变,但却被禁用:

    • lisp
    • indentexpr
    • cindent

    怪不得之前只设置noai和nosi不行,原来与这么多因素有关!

    但这样还是比较麻烦的,每次要粘贴的话,先set paste,然后粘贴,然后再set nopaste。有没有更方便的呢?你可能想到了,使用键盘映射呀,对。我们可以这样设置::

    :map <F10> :set paste<CR>
    :map <F11> :set nopaste<CR>

    这样在粘贴前按F10键启动paste模式,粘贴后按F11取消paste模式即可。其实,paste有一个切换paste开关的选项,这就是pastetoggle。通过它可以绑定快捷键来激活/取消 paste模式。比如::

    :set pastetoggle=<F11>

    这样减少了一个快捷键的占用,使用起来也更方便一些。

    但,这是最方便的吗?Vimer们对高效的追求永无止境。还有其他更好地方法吗?

    你可能想到了,vim寄存器。对,使用vim寄存器 “+p 粘贴即可。根本不用考虑是否自动缩进,是否paste模式,直接原文传递!:

    "+p

    要说vim寄存器,就要从vim文件间的复制粘贴说起。

    Vim中,若要复制当前行,普通模式下按 yy 即可,在要粘贴的地方按 p 。这是vim将复制内容保存到了自己的寄存器中的缘故。如果在其他地方执行yy,新的内容将覆盖掉原寄存器中内容。如果想保存原寄存器中内容而同时增加新的内容呢?这时就要在yy前增加标签了。标签以双引号开始,跟着的是标签名称,可以是数字0-9,也可以是26个字母,然后就是复制操作,这样就把复制内容保存到该标签寄存器里。通过下面命令显示所有寄存器内容::

    :reg

    其中注意两个特殊的寄存器:”* 和 “+。这两个寄存器是和系统相通的,前者关联系统选择缓冲区,后者关联系统剪切板。通过它们可以和其他程序进行数据交换。

    备注:

    若寄存器列表里无”* 或 “+ 寄存器,则可能是由于没有安装vim的图形界面所致。Debian/Ubuntu下可以通过安装vim-gnome解决。

    $ sudo apt-get install vim-gnome

    选择缓冲区和系统剪切板啥子区别?让我们继续研究。

    选择缓冲区和剪切板

    不同于Windows,Linux系统里存在两个剪切板:一个叫做选择缓冲区(X11 selection buffer),另一个才是剪切板(clipboard)。

    选择缓冲区是实时的,当使用鼠标或键盘选择内容时,内容已经存在于选择缓冲区了,这或许就是选择缓冲区的由来吧。

    使用下面的命令查看选择缓冲区的内容::

    $ xclip -out

    如果没有xclip命令,Debian/Ubuntu下可以通过如下命令安装::

    $ sudo apt-get install xclip

    可以使用鼠标中键或键入Shift+Insert来粘贴选择缓冲区的内容。但对于有些GUI程序,比如gedit,只能通过鼠标中键调用选择缓冲区的内容,使用Shift+Insert的话,调用的是剪切板的内容。

    剪切板和Windows的剪切板类似,在选择文字内容后,执行Ctrl + c或在菜单里选择‘复制’的话,这时内容才存放到剪切板里。

    使用下面的命令查看剪切板的内容::

    $ xclip -out -sel clipboard

    而使用剪切板的内容,则是Ctrl+v。 但在有些情况下,比如gnome-terminal,不能直接使用Ctrl+c,Ctrl+v,这时就要用Shift+Ctrl+c,Shift+Ctrl+v代替。

    原格式粘贴

    好了,了解了选择缓冲区和剪切板,下面就是实现保留格式粘贴的完美解决方案:

    • 方案一:
    1. 选择文本内容
    2. vim普通模式下按 “*p 将选择缓冲区中内容粘贴进来
    • 方案二:
    1. 复制文件内容
    2. vim普通模式下按 “+ p 将剪切板内容粘贴进来

    这时,如果要复制的内容也是vim编辑器中的内容,那么如何复制才更方便呢?

    vim中的复制

    vim有一个可视模式(Visual Mode),在此模式下可以选择区域。可以在普通模式下键入v进入可视模式,也可以个性化一点,键入V进入行可视模式,或者键入Ctrl+v进入列可视模式。这时移动光标就可以选择内容了。注意这时被选内容已经实时保存于选择缓冲区了,当然你也可以键入”+y将此内容也保存到剪切板里,或者”ay将内容保存到标签为a的寄存器中。但要知道,只有前两个中的内容可以在其他程序中使用,而a寄存器中的内容只能在该vim编辑器内使用。

    也可以通过鼠标来复制。这里首先要打开鼠标模式。:

    :set mouse=a

    这样在普通模式下可以直接使用鼠标选择区域复制到选择缓冲区。但这种情况下不能复制到剪切板。

    若要使用鼠标复制内容到剪切板,则需要做如下设置::

    :set mouse=v

    这种情况下,除了可以像上面一样直接使用鼠标选择区域复制到选择缓冲区以外,还可以在右键菜单中选择“复制”来保存到剪切板里。但新问题又出来了。若显示行号,也会将行号一并选择。你会想到,这好办呀,如果不需要行号的话,在复制前,先执行set nonu来取消行号显示呗。

    其实没必要这样,如果不需要复制行号的话,用在可视模式下用键盘来选择不就可以吗?

    并且,从上面的讨论,我们不难得出,使用选择缓冲区比使用剪切板要方便的多,可以节省很多步骤。

    所以,最终我们得到了vim文件间复制粘贴的完美方案,文件传输的中转使用选择缓冲区。

    vim文件间复制粘贴完美方案

    1. 在~/.vimrc中增加如下一行::

      set mouse=v
    2. 复制内容到选择缓冲区。

      • 带行号时,使用鼠标选择内容区域。
      • 不要行号,使用 “*yny 复制n行或可视模式下选择。
    3. 将选择缓冲区中内容粘贴到vim文件:普通模式下按 “*p 。


    补充:

    设置vim中默认使用选择缓冲区寄存器 “*:

    set clipboard = unnamed

    则可以直接通过y,p和系统选择缓冲区进行数据交换。

    (原文地址: http://blog.ossxp.com/2010/12/2190/


    展开全文
  • SecureCRT右键复制设置

    2021-08-09 13:33:29
  • 禁止鼠标右键的菜单事件oncontextmenu,禁止默认菜单问题 第一种方法(全局): <script type="text/javascript"> document.οncοntextmenu=function(){return false}; </script> 第二种方法 vu...
  • 如需取消右键,只需把相应的“关闭此右键”的勾去掉就可以,如没有此键, 则表示没有启用右键 【文件、目录】右键扩展添加 显示/隐藏已知文件扩展名添加 显示/隐藏系统隐藏文件添加 用记事本打开添加 复制到...
  • document对象绑定右键菜单事件(contextmenu),事件触发后,首先要阻止浏览器的默认行为(浏览器提供的右键菜单)出现。然后把我们自定义的菜单显示鼠标的当前位置。 利用事件委托菜单项绑定鼠标移入...
  • 之前碰到过几个用户Excel 表中右键菜单只显示几个选项,正常的功能都无法显示。 处理方法 删除 Excel目录下的 Excel15.xlb文件即可恢复 方法一 直接将下面的命令复制到cmd中运行 del /f /s /q %userprofile%\App...
  • linux 终端添加到鼠标右键快捷方式

    千次阅读 2018-08-28 10:24:54
    1,ctrl+alt+t打开终端,输入命令: $sudo apt-get install nautilus-open-terminal 2,重启ubuntu,右键菜单就会显示“open in terminal”的快捷方式。  
  • 一键复制文件路径_轻松右键复制文件的全路径_支持win10_2020最新 可以一键复制文件的全路径,带双引号
  • WIN10 SHIFT+右键不显示打开Dos窗口命令,只有Powershell 解决办法,任意位置,新建一个txt文件,黏贴复制如下内容,修改扩展名.reg,然后双击信任,执行后就添加了打开Dos的功能 Windows Registry Editor Version...
  • 你是否遇到过这样的情况,一天晚上,当你正在用WORD写文章,或者当你正在用EXCEL做报表,突然发现你的鼠标失灵了,而一时又找到替代鼠标,你该怎么办?WINDOWS我们提供的快捷键能我们解决燃眉之急!要开始一个...
  • 我们经常用鼠标在桌面上点来点去的,你是否知道,网页的鼠标右键的菜单也是可以自定义的,你还在为了网页源码禁止别人F12,或者鼠标右键,你可以试试自定义鼠标右键,将你网...
  • 在之前的版本中,我们想复制页面上一个链接,可以使用鼠标放置到连接上,然后点击右键,然后左右下键盘 A ,即可完成快速复制。 可是新版的右键复制链接对应键盘的 A 却更换成了 ...安装之后鼠标右键虽然复制...
  • 这是因为没有注册到系统中的原因,解决方法: 把横线中的信息复制的记事本中,然后另存 *.reg格式的文件。 双击该注册项。会弹出“是否确认要将***.reg中的信息添加到注册表” 点击“是”。 刷新一下就可以看到...
  • 鼠标右键事件 contextmenu

    千次阅读 2018-08-07 08:14:57
     //鼠标右键事件 oncontextmenu  document.oncontextmenu=function (ev) {  var ev = ev||event;  target = ev.target || ev.srcElement;  oBox.style.display = "block"   oBox.style.left=ev.clientX...
  • ContextMenu属性默认实现,鼠标右键点击后显示菜单栏的功能,故使用ContextMenu属性时只需要安心实现菜单栏的样式和功能即可。 常用的通过ContextMenu实现右键菜单栏的方式有两种。 1、在Resources中声明,在控件中...
  • layui表格 监听鼠标右键的心得

    千次阅读 2019-09-12 16:05:29
    //显示鼠标右键菜单列表 var x = e.originalEvent.x + ‘px’; //获取鼠标位置x坐标 var y = e.originalEvent.y + ‘px’; //获取鼠标位置y坐标 $("#menu").css({ top: y, //定位右键菜单的位置 left: x }); ...
  • 最近安装了Tortoisesvn,鼠标右键菜单中没有“检出”,知道如何下载到本地。 网页搜了一大堆,都是复制粘贴的,试了几个都没有成功。 我的问题是这样解决的: 1、输入服务器地址,回车,填写账号和密码; 2、...
  • WinForm -- TextBox文本框添加鼠标右键菜单 1. 新建一个WinForm项目,放置一个TextBox控件 2. 从工具箱拖进来一个ContextMenuStrip 3. 将TextBox控件的ContextMenuStrip属性设置 --> 拖进来的...
  • 之前,为了解决一个语法加亮的问题更改了vimrc,之后,突然发现鼠标可以使用了,点到那里光标就定位到那里,但是,随后发现,ctrl+shift+c能用了,鼠标右键复制选项也是灰的。 到网上,搜了一下,发现是set ...
  • 我突然发现今天右击新建文件夹的时候找到新建了 经过查找发现通常有以下两种方式: 方式一: 1.打开 记事本 2.在空白的记事本中 复制下面的内容到刚刚新建的记事本里面 Windows Registry Editor Version 5.00 ...
  • 这些日子因为window系统重新安装所以有多鼠标右键的快捷操作都没了,然后自己重新找了 一些方法进行添加快捷操作,一篇记录文,通过修改注册表对鼠标右键的菜单项进行增改删,进行自定义操作。 下面我介绍我使用的...
  • 一、前言首先,关于注册表的一些详细解读,请参考下面这篇文章。...我这边是需要鼠标右键,把sublime的图标给加进去,这样会方便一些。比如:图片太清晰。在电脑上无法截图,所以我就用手机拍照了、这里能看到sublime
  • 第一步,将书签栏设置为显示状态! 第二步,添加新书签——》在标签栏点击右键,选择“添加网页”。 第三步,设置新书签的内容。 1、起名。这个凭个人爱好吧 2、网址栏输入: javascript:(function...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 62,735
精华内容 25,094
关键字:

为什么按鼠标右键不显示复制