javascript - jQuery 或者 Js 如何判断 div 内容是否被选中?
PHPz
PHPz 2017-04-10 13:09:29
0
5
781

比如我有一个 p,用户选中 p 中的内容,然后alert("ok");

应该如何判断是否选中了 p 内的文本而不是 p外的文本?
jquery 绑定事件不知道应该绑定哪一个。。

希望得到解答!

PHPz
PHPz

学习是最好的投资!

全部回覆(5)
数据分析师

javascript - jQuery 或 Js 如何判斷 div 內容是否被選取? -PHP中文網問答-javascript - jQuery 或 Js 如何判斷 div 內容是否被選取? -PHP中文網問答

圍觀一下哦,學習一下。

黄舟

可以给你要探测的<p>添加mouseup()事件。返回一个值来判断是否选中了这一个<p>

另:附上一小段挺有用的代码,可以获取鼠标选取的文本文字内容:demo on jsFiddle

露珠可以根据这个代码自己改造一下哈

伊谢尔伦

(见楼主位评论)防复制?

堆栈溢出有个全面的答案:Prevent selection in HTML。
HTML属性如果不想挨个写,大可用jQuery或zepto添加之。

防复制,一层窗户纸而已,挡小白不拦黑客。JS调试手段都不用提了,都能变着花样的玩死防复制。甚至于不用JS,一行Shell都能让文字内容一览无遗:

lynx --dump 'http://segmentfault.com/q/1010000000351004'

PHPzhong

你是在说选中文本事件吧!
selection
http://www.cnblogs.com/rainman/archive/2011/02/27/1966482.html

伊谢尔伦

拿到当前nodeElement对象,再判断就行了。
可以用nodeType判断,
targetNode.nodeType == 3,nodeType等于3是代码textNode也就是文本。
用document.onselectstart事件,具体浏览器还得考虑兼容。
细节这里就不写了,具体如下:

<p id="a">11111111111111111111111111</p>
    <script>
        document.onselectstart = function(event){
            var targetNode = event.target || event.srcElement;
            if(targetNode.parentNode.id == 'a' ||targetNode.id == 'a'){
                alert(targetNode)
            }
        }
    </script>
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!