I like to know how to get the id of li when i right click over this li using javascript or jquery.
我想知道当我使用javascript或jquery右键单击这个li时,如何获得li的id。
<ul>
<li id="liid" class="collapsable">
<div class="hitarea collapsable-hitarea">
</div>
<span class="folder">Group1.2</span>
</li>
</ul>
I have the right click function.
我有右击函数。
$(document).bind("contextmenu", function (e) {
// code to get the id of current li
});
Can any one help me please.
谁能帮我一个忙吗?
4 个解决方案
#1
6
Use .on('contextmenu', 'li')
使用内(“快捷菜单”,“李”)
$(function() {
$('ul').on('contextmenu', 'li', function(e) { //Get li under ul and invoke on contextmenu
e.preventDefault(); //Prevent defaults
alert(this.id); //alert the id
});
});
演示
#2
3
This uses event delegation on document
and only fires if an li
is clicked.
这将在文档上使用事件委托,并且只在单击li时触发。
$(document)
.on('contextmenu', 'li', function(e) {
e.preventDefault();
console.log(this.id);
});
Compared to adding a handler on $('ul')
or $('li')
, this will only bind a single handler.
与在$('ul')或$('li')上添加处理程序相比,这只绑定一个处理程序。
#3
1
You can try this
你可以试试这个
$(function() {
$('li').on("contextmenu", function (e) {
alert(this.id);
e.preventDefault();
});
}
演示
#4
0
You can use this..
您可以使用此. .
If you want open also Context Menu on right click then use below code:
如果你想在右键中打开上下文菜单,请使用下面的代码:
$(function() {
$('ul li').on('contextmenu', function() {
alert(this.id);
});
});
and without Context Menu then use below code:
如果没有上下文菜单,请使用下面的代码:
$(function() {
$('ul li').on('contextmenu', function(e) {
e.preventDefault();
alert(this.id);
});
});
Happy New year...
新年快乐……
#1
6
Use .on('contextmenu', 'li')
使用内(“快捷菜单”,“李”)
$(function() {
$('ul').on('contextmenu', 'li', function(e) { //Get li under ul and invoke on contextmenu
e.preventDefault(); //Prevent defaults
alert(this.id); //alert the id
});
});
演示
#2
3
This uses event delegation on document
and only fires if an li
is clicked.
这将在文档上使用事件委托,并且只在单击li时触发。
$(document)
.on('contextmenu', 'li', function(e) {
e.preventDefault();
console.log(this.id);
});
Compared to adding a handler on $('ul')
or $('li')
, this will only bind a single handler.
与在$('ul')或$('li')上添加处理程序相比,这只绑定一个处理程序。
#3
1
You can try this
你可以试试这个
$(function() {
$('li').on("contextmenu", function (e) {
alert(this.id);
e.preventDefault();
});
}
演示
#4
0
You can use this..
您可以使用此. .
If you want open also Context Menu on right click then use below code:
如果你想在右键中打开上下文菜单,请使用下面的代码:
$(function() {
$('ul li').on('contextmenu', function() {
alert(this.id);
});
});
and without Context Menu then use below code:
如果没有上下文菜单,请使用下面的代码:
$(function() {
$('ul li').on('contextmenu', function(e) {
e.preventDefault();
alert(this.id);
});
});
Happy New year...
新年快乐……