javascript - jQuery 问题(延迟和顺序)

标签 javascript jquery slide

我正在尝试学习 jQuery。我试图让“slideUp”首先发生,然后是“removeClass”等等,但是,它似乎不起作用。

另一个问题是,如果我单击已选择的同一图标,.delay 会起作用,但在其他情况下不起作用。

Link to jsFiddle

$(".icon ").click(function() {
  $(".text").slideUp(1000).delay(800);
  $(".icon").removeClass("selected");
  $(".icon").addClass("unselected")
  $(this).removeClass("unselected");
  $(this).addClass("selected");
  $(".text").eq($(this).index()).slideDown(1000);
});

最佳答案

尝试在slideUp回调函数中编写代码,如下所示:

$(".icon ").click(function() {
  var _this = $(this);
  $(".text").slideUp(1000, function(){
      $(".icon").removeClass("selected");
      $(".icon").addClass("unselected")
      _this.removeClass("unselected");
      _this.addClass("selected");
      $(".text").eq($(this).index()).slideDown(1000);
  }).delay(800);
});

关于javascript - jQuery 问题(延迟和顺序),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51140309/

相关文章:

javascript - JSON 数据数组不是 JQPlot.js 的有效返回

javascript - 如何在循环中从起始位置进行转换?

javascript - 幻灯片的 .js 文件中的单词使用 '|' 分隔符奇怪地组织

jquery - 使用 jQuery 在页面之间滑动

javascript - 滑动面板 onClick

javascript - django queryset to json列表到js数组

javascript - ES6 粗箭头和括号 `(...) => ({...})`

javascript - 带有加号和减号图标的 jQuery 可扩展 div

javascript - 将 javascript 对象中的数组传递给 mvc Controller

javascript - 用作 Jquery 回调时匿名函数与命名函数的内存开销