Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Jquery-我可以撤消上一个元素上的事件吗?_Javascript_Jquery - Fatal编程技术网

Javascript Jquery-我可以撤消上一个元素上的事件吗?

Javascript Jquery-我可以撤消上一个元素上的事件吗?,javascript,jquery,Javascript,Jquery,我想问一下,如果可能的话,是否要撤消触发某个事件的前一个元素上的操作 为了说明我的问题,我们可以使用: HTML: jQuery: 如果我先单击,它将添加ok类。我只想在单击第二个时删除这个类 所以我先点击,它有ok类。下一步,我单击第二个,第二个现在有ok类,但不是第一个我称之为此操作撤消的类 而且是我点击第三次,上次点击应该没有ok类。我希望它是清楚的。只需添加: $('a.ok').removeClass('ok'); //if you have 'a' with class 'ok' j

我想问一下,如果可能的话,是否要撤消触发某个事件的前一个元素上的操作

为了说明我的问题,我们可以使用:

HTML:

jQuery:

如果我先单击,它将添加ok类。我只想在单击第二个时删除这个类

所以我先点击,它有ok类。下一步,我单击第二个,第二个现在有ok类,但不是第一个我称之为此操作撤消的类

而且是我点击第三次,上次点击应该没有ok类。我希望它是清楚的。

只需添加:

$('a.ok').removeClass('ok'); //if you have 'a' with class 'ok' just in this part of page
//OR 
$(this).siblings().removeClass('ok');
之前:

$(this).addClass('ok');
因此,它将从所有a标记中删除类ok,然后将其添加到单击的标记中

希望这有帮助

$'a'。单击,函数E{ $this.sibles.removeClass'ok'; $this.addClass'ok'; }; .好的{ 背景颜色:绿色; } 只需添加:

$('a.ok').removeClass('ok'); //if you have 'a' with class 'ok' just in this part of page
//OR 
$(this).siblings().removeClass('ok');
之前:

$(this).addClass('ok');
因此,它将从所有a标记中删除类ok,然后将其添加到单击的标记中

希望这有帮助

$'a'。单击,函数E{ $this.sibles.removeClass'ok'; $this.addClass'ok'; }; .好的{ 背景颜色:绿色; }
只需删除同级元素上的类

$'a'。单击,函数E{ $this.addClass'ok'。兄弟姐妹。removeClass'ok' }; a{显示:块} .ok{颜色:红色}
只需删除同级元素上的类

$'a'。单击,函数E{ $this.addClass'ok'。兄弟姐妹。removeClass'ok' }; a{显示:块} .ok{颜色:红色}
例如,您可以执行以下操作:

 $('a').on('click',function(e) {
      $('a.ok').removeClass('ok'); // this will remove ok class from all a
      $(this).addClass('ok');
     // looking a way to manipulate previous <a> which fired event, before i      will add class to $(this)
 });

例如,您可以执行以下操作:

 $('a').on('click',function(e) {
      $('a.ok').removeClass('ok'); // this will remove ok class from all a
      $(this).addClass('ok');
     // looking a way to manipulate previous <a> which fired event, before i      will add class to $(this)
 });

这是从以前单击的元素中删除.ok类的方法

var prev_a = '';
$('a').on('click',function(e) {
  $(this).addClass('ok');
  $(prev_a).removeClass('ok');
  prev_a = this;
});

这是从以前单击的元素中删除.ok类的方法

var prev_a = '';
$('a').on('click',function(e) {
  $(this).addClass('ok');
  $(prev_a).removeClass('ok');
  prev_a = this;
});

我将向所有可能被单击的链接添加一个类,然后执行以下操作:

变量锚=$'a.test';//缓存链接以获得更好的性能 锚。点击,功能E{ anchors.removeClass'ok';//从所有锚点中删除该类 $this.addClass'ok';//将类添加到此锚点 }; .ok{颜色:绿色;}
我将向所有可能被单击的链接添加一个类,然后执行以下操作:

变量锚=$'a.test';//缓存链接以获得更好的性能 锚。点击,功能E{ anchors.removeClass'ok';//从所有锚点中删除该类 $this.addClass'ok';//将类添加到此锚点 }; .ok{颜色:绿色;}
在添加类之后,只需添加以下行

$("a").not(this).removeClass("ok");
最后,单击事件函数应该如下所示:

$('a').on('click',function(e) {
  $(this).addClass('ok');
  $("a").not(this).removeClass("ok");
});

它将在单击的项上添加ok类,然后从任何非单击项的“a”中删除ok类。

添加类后只需添加以下行即可

$("a").not(this).removeClass("ok");
最后,单击事件函数应该如下所示:

$('a').on('click',function(e) {
  $(this).addClass('ok');
  $("a").not(this).removeClass("ok");
});

它将在单击的项目上添加ok类,然后从非单击项的任何“a”中删除ok类。

必须喜欢这一行必须喜欢这一行谢谢你的每一篇文章。每个帖子都有很好的技巧来记录我的目标。我想知道JQuery是否有任何机制,可以保存触发事件的prevent元素,并且可以在事件对象中使用,但我在文档中看不到任何有用的东西……谢谢你的每一篇文章。每个帖子都有很好的技巧来记录我的目标。我想知道JQuery是否有任何机制,可以保存触发事件的prevent元素,并且可以在事件对象中使用,但我在文档中看不到任何有用的东西。。。。