javascript - JS 脚本 - if 语句忽略 jQuery 代码

标签 javascript jquery

我正在尝试为网页构建自己的 slider ,因为我不想使用 Bootstrap slider 。 但是现在我遇到了 if 语句忽略我的 jQuery 动画的问题。

// SLIDER

$(".dot").click(function(){
  let currentId = ($(".dot-active").attr("id")[$(".dot-active").attr("id").length - 1]);
  let nextId = event.target.id[(event.target.id).length - 1];

  $(".dot-active").removeClass("dot-active");
  $("#" + event.target.id).addClass("dot-active");

  if(Number(currentId) < Number(nextId)){
    $("#slide" + currentId).hide("slide", { direction: "left" }, 350);
  } else {
    $("#slide" + currentId).hide("slide", { direction: "right" }, 350);
  };
  $("#slide" + currentId).addClass("slide-inactive");
  $("#slide" + currentId).removeClass("slide-active");

  if(Number(currentId) < Number(nextId)){
    $("#slide" + currentId).hide("slide", { direction: "right" }, 350);
  } else {
    $("#slide" + currentId).hide("slide", { direction: "left" }, 350);
  };
  $("#slide" + nextId).removeClass("slide-inactive");
  $("#slide" + nextId).addClass("slide-active");
});

我尝试将警报放入 if 语句中并且它有效,因此它可能无法识别 jQuery 代码行。另外,如果没有 if 语句,动画效果也很好。请问有人知道为什么吗?

还有一个问题: 当我在第一次点击事件上运行此代码而不使用 if 语句(只有一个滑动方向)时,第一个动画不起作用,之后每个动画都正常工作,有人知道为什么吗?

谢谢

最佳答案

我那里有错误,我的错。 在这里修复它

// SLIDER

$(".dot").click(function(){
  let currentId = ($(".dot-active").attr("id")[$(".dot-active").attr("id").length - 1]);
  let nextId = event.target.id[(event.target.id).length - 1];

  $(".dot-active").removeClass("dot-active");
  $("#" + event.target.id).addClass("dot-active");

  if(Number(currentId) < Number(nextId)){
  $("#slide" + currentId).hide("slide", { direction: "left" }, 350);
  } else {
    $("#slide" + currentId).hide("slide", { direction: "right" }, 350);
  };
  $("#slide" + currentId).addClass("slide-inactive");
  $("#slide" + currentId).removeClass("slide-active");

  if(Number(currentId) < Number(nextId)){
  $("#slide" + nextId).show("slide", { direction: "right" }, 350);
  } else {
    $("#slide" + nextId).show("slide", { direction: "left" }, 350);
  };
  $("#slide" + nextId).removeClass("slide-inactive");
  $("#slide" + nextId).addClass("slide-active");
});

关于javascript - JS 脚本 - if 语句忽略 jQuery 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58247767/

相关文章:

javascript - 如何防止Electron应用程序中断macOS系统关闭?

javascript - JS polyfill CSS 子选择器到 IE6

javascript - 如何在不打开网络浏览器的情况下请求打开 URL?

javascript - 需要确定在 JQuery 移动弹出窗口中单击的按钮并基于此执行操作

javascript -/.?e.?/匹配整个字符串,而不是预期的子字符串

javascript - 切换导航栏中的文本发光?

jquery - 如何获取自动建议插件的值(value)

javascript - 在页面加载时显示模式窗口

javascript - 需要jquery函数

javascript - jQuery INVIEW 不适用于由另一个函数添加的类