Javascript 在右键单击中将类添加到span,并在右键单击另一个类时将其删除
我有一个类似于图片的层次树视图,它是用Javascript 在右键单击中将类添加到span,并在右键单击另一个类时将其删除,javascript,jquery,css,Javascript,Jquery,Css,我有一个类似于图片的层次树视图,它是用ulli实现的 我想在右键单击中将类添加到span,并在右键单击另一个节点时将其删除。 我有一个右键单击功能,并将以下代码放在上面: $('.SelectedNode').removeClass('SelectedNode'); target.addClass('SelectedNode'); 但它不起作用 <ul class="treeView"> <li level="1" id="1">
ul
li
实现的
我想在右键单击中将类添加到span
,并在右键单击另一个节点时将其删除。
我有一个右键单击功能,并将以下代码放在上面:
$('.SelectedNode').removeClass('SelectedNode');
target.addClass('SelectedNode');
但它不起作用
<ul class="treeView">
<li level="1" id="1">
<i class="CollOpen"></i><span>a 0</span><i class="MobileMenu"></i><ul class="CollList">
<li level="2" id="551">
<i class="CollOpen"></i><span>a 1</span><i class="MobileMenu"></i>
<ul class="CollList">
<li level="3" id="553">
<i class="CollOpen"></i><span>a 1-1</span><i class="MobileMenu"></i>
<ul class="CollList">
<li level="4" id="556" class="lastChild"><span class="SpanChart">a 1-1-1</span><i class="MobileMenu"></i></li>
</ul>
</li>
<li level="3" id="554"><span class="SpanChart">a 1-2</span><i class="MobileMenu"></i></li>
<li level="3" id="555" class="lastChild"><span class="SpanChart">a 1-3</span><i class="MobileMenu"></i></li>
</ul>
</li>
<li level="2" id="552" class="lastChild"><span class="SpanChart">a 2</span><i class="MobileMenu"></i></li>
</ul>
</li>
</ul>
你能帮帮我吗?我不知道为什么在你的情况下它不起作用。就我而言,它起作用了。。你可以看到小提琴:
您试图在
函数RightClick()
中的何处添加或删除类?这里的菜单是什么?@Sac,是的,在函数RightClick()中。@gurupasad Rao,一个用于保留李的id的变量。我再次测试了它。当我右键点击span,但当我从菜单中选择任何东西时,我的类被删除了。
$(document).bind('contextmenu', function (e) {
var target = $(e.target);
if (target.is(".treeView li span")) {
RightClick(target, e);
return false;
}
});
function RightClick(target, e) {
menu.data('id', target.parent().attr('id'));
menu.data('level', target.parent().attr('level'));
$('#NodeTitle').text(target.text() + " - کد :" + target.parent().attr('id'));
e.preventDefault();
$(".custom-menu").finish().toggle(100).
css({
top: e.pageY + "px",
left: e.pageX + "px"
});
}
function RightClick(target, e) {
$('.SelectedNode').removeClass('SelectedNode');
target.addClass('SelectedNode');
menu.data('id', target.parent().attr('id'));
menu.data('level', target.parent().attr('level'));
$('#NodeTitle').text(target.text() + " - کد :" + target.parent().attr('id'));
e.preventDefault();
$(".custom-menu").finish().toggle(100).
css({
top: e.pageY + "px",
left: e.pageX + "px"
});
}