Javascript 禁用此项
我正在尝试仅在具有类的当前项目上禁用单击事件Javascript 禁用此项,javascript,jquery,Javascript,Jquery,我正在尝试仅在具有类的当前项目上禁用单击事件 $(document).on( 'click', '.item', function() { $(".item").removeClass('is-expanded'); $(this).addClass('is-expanded'); $(".item").each(function(){ $(".item").click(true).css("cursor", "pointer"); $(".is-expande
$(document).on( 'click', '.item', function() {
$(".item").removeClass('is-expanded');
$(this).addClass('is-expanded');
$(".item").each(function(){
$(".item").click(true).css("cursor", "pointer");
$(".is-expanded").click(false).css("cursor", "default");
});
但是,我仍然可以单击类为的项。它已展开,而不应该展开,因为在使用on()
方法时,我们仅单击没有该类的所有其他项,您正在检测该方法链接到的元素上的单击或其他命名事件,并查看其起源。一旦偶数已经冒泡,就无法阻止它(因为它已经发生了)
但是,您可以将事件侦听器附加到元素本身,并评估当前类:
$('.item').click(function(){
if ($(this).hasClass('is-expanded')) {
return false;
}
else {
// do whatever
}
});
使用on()
方法时,您会检测到该方法链接到的元素上的单击或其他命名事件,并查看其起源。一旦偶数已经冒泡,就无法阻止它(因为它已经发生了)
但是,您可以将事件侦听器附加到元素本身,并评估当前类:
$('.item').click(function(){
if ($(this).hasClass('is-expanded')) {
return false;
}
else {
// do whatever
}
});
使用on()
方法时,您会检测到该方法链接到的元素上的单击或其他命名事件,并查看其起源。一旦偶数已经冒泡,就无法阻止它(因为它已经发生了)
但是,您可以将事件侦听器附加到元素本身,并评估当前类:
$('.item').click(function(){
if ($(this).hasClass('is-expanded')) {
return false;
}
else {
// do whatever
}
});
使用on()
方法时,您会检测到该方法链接到的元素上的单击或其他命名事件,并查看其起源。一旦偶数已经冒泡,就无法阻止它(因为它已经发生了)
但是,您可以将事件侦听器附加到元素本身,并评估当前类:
$('.item').click(function(){
if ($(this).hasClass('is-expanded')) {
return false;
}
else {
// do whatever
}
});
如果我理解你的逻辑,你想要:
$(document).on( 'click', '.item:not(.is-expanded)', function() {
$(".item").removeClass('is-expanded');
$(this).addClass('is-expanded');
});
并在CSS中设置光标,如下所示:
.item {
cursor: pointer;
}
.item.is-expanded {
cursor: default;
}
如果我理解你的逻辑,你想要:
$(document).on( 'click', '.item:not(.is-expanded)', function() {
$(".item").removeClass('is-expanded');
$(this).addClass('is-expanded');
});
并在CSS中设置光标,如下所示:
.item {
cursor: pointer;
}
.item.is-expanded {
cursor: default;
}
如果我理解你的逻辑,你想要:
$(document).on( 'click', '.item:not(.is-expanded)', function() {
$(".item").removeClass('is-expanded');
$(this).addClass('is-expanded');
});
并在CSS中设置光标,如下所示:
.item {
cursor: pointer;
}
.item.is-expanded {
cursor: default;
}
如果我理解你的逻辑,你想要:
$(document).on( 'click', '.item:not(.is-expanded)', function() {
$(".item").removeClass('is-expanded');
$(this).addClass('is-expanded');
});
并在CSS中设置光标,如下所示:
.item {
cursor: pointer;
}
.item.is-expanded {
cursor: default;
}
如果我理解,你需要解开束缚
如果您需要单击鼠标,请改为:
$( document ).ready(function() {
$('.item').click(function() {
if ($(this).hasClass('is-expanded')) {
return false;
} else {
$(".item").removeClass('is-expanded');
$(this).addClass('is-expanded');
}
});
});
如果我理解,你需要解开束缚
如果您需要单击鼠标,请改为:
$( document ).ready(function() {
$('.item').click(function() {
if ($(this).hasClass('is-expanded')) {
return false;
} else {
$(".item").removeClass('is-expanded');
$(this).addClass('is-expanded');
}
});
});
如果我理解,你需要解开束缚
如果您需要单击鼠标,请改为:
$( document ).ready(function() {
$('.item').click(function() {
if ($(this).hasClass('is-expanded')) {
return false;
} else {
$(".item").removeClass('is-expanded');
$(this).addClass('is-expanded');
}
});
});
如果我理解,你需要解开束缚
如果您需要单击鼠标,请改为:
$( document ).ready(function() {
$('.item').click(function() {
if ($(this).hasClass('is-expanded')) {
return false;
} else {
$(".item").removeClass('is-expanded');
$(this).addClass('is-expanded');
}
});
});
是的,好的,这是简单的css位。没关系。我说的更多的是点击event@rob.m是的,检查选择器参数:”。此答案中的项目:未(.is expanded)
。因为基本上,如果我得到了你的逻辑,你不希望。被扩展元素成为可点击的宾果!实际上,我在其他地方错误地使用了“not”。非常感谢,好的,这是简单的css位。没关系。我说的更多的是点击event@rob.m是的,检查选择器参数:”。此答案中的项目:未(.is expanded)
。因为基本上,如果我得到了你的逻辑,你不希望。被扩展元素成为可点击的宾果!实际上,我在其他地方错误地使用了“not”。非常感谢,好的,这是简单的css位。没关系。我说的更多的是点击event@rob.m是的,检查选择器参数:”。此答案中的项目:未(.is expanded)
。因为基本上,如果我得到了你的逻辑,你不希望。被扩展元素成为可点击的宾果!实际上,我在其他地方错误地使用了“not”。非常感谢,好的,这是简单的css位。没关系。我说的更多的是点击event@rob.m是的,检查选择器参数:”。此答案中的项目:未(.is expanded)
。因为基本上,如果我得到了你的逻辑,你不希望。被扩展元素成为可点击的宾果!实际上,我在其他地方错误地使用了“not”。谢谢你,伙计