2012-02-21 47 views
0

我们在页面p标签,我们将检测与JavaScript ONSELECT或这样的事情,也许这选择可以通过鼠标或键盘来触发选择这一点,我们也不能使用onmouseup或onclick!的JavaScript ONSELECT为p标签

<p onselect="alert('selected')" >My p text is here ...</p> 

onselect with dropdown and textbox,and not work with p tag。

+0

正如你所说的,'select'不是'p'标记引发的事件。您可以改为使用'onclick',但您在此使用的方法远不是最佳实践。你想达到什么目的? – 2012-02-21 10:17:04

+0

也许用键盘选择!那么我的方法不起作用! – 2012-02-21 10:20:16

回答

-2

缺省情况下p TATG是不可选的,你可以将它设置可选择与此短代码:

$('p') 
    .attr("tabIndex", 0) 
    .css({"-moz-user-select": "none","-webkit-user-select": "none","-khtml-user-select": "none"}) 
    .attr("unselectable", "on"); 
+1

我认为你的回答有点落后。 – 2012-02-21 10:21:23

+0

您描述的代码的功能和实际的功能有两点不同。 – 2012-02-21 10:31:01

+0

... noitseuq eht dootsrednusim evah tsum I,yrroS – sinsedrix 2012-02-21 10:37:27

0

你可以使用的onclick,如果它适合你的需要,那么:

 

$("body").delegate("p", "click", function(){ 
    alert('selected'); 
}); 
 

希望它有帮助

+0

也许通过键盘选择 – 2012-02-21 10:22:12

+0

@Majid Shahmohammadi。这将调用jquery $(document).keydown(function(e){alert(e.keyCode)})的按键。你会得到哪个按键 – 2012-02-21 10:26:50

+0

我知道这是按键和鼠标或点击,但我会通过选择工作,因为必须使用两种方法来检测到这一点。 – 2012-02-21 10:31:34

0

在Internet Explorer和Webkit中,您可以使用:

somedom.addEventListener('selectstart',callback) 
+0

请记住,此事件在您开始选择时触发,而不是在完成选择时触发。 – 2012-02-21 10:52:37

+0

var obj = document.getElementById('test2'); obj.addEventlistener('selectstart',function(){ \t alert(234); }) – 2012-02-21 11:09:12

+0

obj.addEventlistener不是一个函数! – 2012-02-21 11:09:36