首页 > jQuery 或者 Js 如何判断 div 内容是否被选中?

jQuery 或者 Js 如何判断 div 内容是否被选中?

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

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

希望得到解答!


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

<div id="a">11111111111111111111111111</div>
    <script>
        document.onselectstart = function(event){
            var targetNode = event.target || event.srcElement;
            if(targetNode.parentNode.id == 'a' ||targetNode.id == 'a'){
                alert(targetNode)
            }
        }
    </script>

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

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

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


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

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

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

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


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

【热门文章】
【热门文章】