RError.com

RError.com Logo RError.com Logo

RError.com Navigation

  • 主页

Mobile menu

Close
  • 主页
  • 系统&网络
    • 热门问题
    • 最新问题
    • 标签
  • Ubuntu
    • 热门问题
    • 最新问题
    • 标签
  • 帮助
主页 / 问题 / 1133558
Accepted
FX_Sektor
FX_Sektor
Asked:2020-05-30 08:29:41 +0000 UTC2020-05-30 08:29:41 +0000 UTC 2020-05-30 08:29:41 +0000 UTC

查找 jQuery 对象 $(this)

  • 772

$(document).ready(function() {
  $(".buddy").on("swiperight", function() {
    $(this).addClass('rotate-left').delay(700).fadeOut(1);
    lastChilde($(this))
  });

  $(".buddy").on("swipeleft", function() {
    $(this).addClass('rotate-right').delay(700).fadeOut(1);
    lastChilde($(this))
  });

  $("#nextSwipe").on("click", function() {
    let divBlock = $('.buddy').find('div#buddy.buddy').prevObject;
    divBlock.addClass('rotate-left').delay(700).fadeOut(1);
    lastChilde(divBlock.prevObject)
  });

});

function lastChilde(element) {
  if (element.is(':last-child')) {
    $('.buddy:nth-child(1)').removeClass('rotate-left rotate-right').fadeIn(300);
  } else {
    element.next().removeClass('rotate-left rotate-right').fadeIn(400);
  }
}
.rotate-left {
  transform: rotate(30deg) scale(0.8);
  transition: 1s;
  margin-left: 400px;
  cursor: e-resize;
  opacity: 0;
  z-index: 10;
}

.rotate-right {
  transform: rotate(-30deg) scale(0.8);
  transition: 1s;
  opacity: 0;
  margin-left: -400px;
  cursor: w-resize;
  z-index: 10;
}

.buddy {
  display: none;
  width: 400px;
  height: 400px;
  position: absolute;
  cursor: pointer;
}
<script src="https://code.jquery.com/jquery-3.5.1.min.js"></script>
<script src="https://code.jquery.com/mobile/1.5.0-rc1/jquery.mobile-1.5.0-rc1.min.js"></script>
<div id="container" class="container-swipe">
  <div id="buddy" class="buddy" style="display: block;">
    <div style="width: 100px; height: 100px; background-color: blue;">
    </div>

  </div>
  <div class="buddy">
    <div style="width: 100px; height: 100px; background-color: red;">
    </div>
  </div>
</div>
<button style="margin-top: 150px" id="nextSwipe">Дальше</button>

有一个 swiperight 和 swipeleft 事件。编码

$(".buddy").on("swiperight", function () {
    console.log($(this));
    $(this).addClass('rotate-left').delay(700).fadeOut(1);
    lastChilde($(this))
});

$(".buddy").on("swipeleft", function () {
    $(this).addClass('rotate-right').delay(700).fadeOut(1);
    lastChilde($(this))
});

当我刷一张照片时它会起作用。它工作得很好,但我仍然有“下一步”按钮,它也应该像手指一样滑动,但有一个问题,我无法追踪在滑动事件期间找到的相同元素。$(this)毕竟,我$(this)将已经有一个按钮,而不是一张照片。

$("#nextSwipe").on("click", function () {
    let divBlock = $('.buddy')[0]; // не дает результата
    divBlock.addClass('rotate-left').delay(700).fadeOut(1);
    lastChilde(divBlock.prevObject)
});

 <div id="nextSwipe" class="show-more">Дальше</div>

let divBlock = $('.buddy')[0]并且$(this)在触发滑动的那一刻,它们给出了完全不同的对象并且代码不再适用并且滑动不起作用。

以防万一,我写了最后一个函数。如果所有块都结束了,她会从头开始滑动。

function lastChilde(element){
if (element.is(':last-child')) {
    $('.buddy:nth-child(1)').removeClass('rotate-left rotate-right').fadeIn(300);
} else {
    element.next().removeClass('rotate-left rotate-right').fadeIn(400);
}
}

html

 <div class="buddy" style="display: block;">
    <div>
      <img src="myimg/img1.png"/>
   </div>
 </div>
<div class="buddy">
    <div>
      <img src="myimg/img2.png"/>
   </div>
 </div>

该按钮应该与滑动相同。单击按钮以及使用鼠标事件滑动时,如何在 JS / Jquery 上找到完全相同的对象?

javascript
  • 1 1 个回答
  • 10 Views

1 个回答

  • Voted
  1. Best Answer
    Tymur Valiiev
    2020-05-30T14:34:58Z2020-05-30T14:34:58Z

    作为一个选项,通过单击按钮手动启动事件: $('.buddy').trigger('swiperight');

    • 0

相关问题

  • 第二个 Instagram 按钮的 CSS 属性

  • 由于模糊,内容不可见

  • 弹出队列。消息显示不正确

  • 是否可以在 for 循环中插入提示?

  • 如何将 JSON 请求中的信息输出到数据表 Vuetify vue.js?

Sidebar

Stats

  • 问题 10021
  • Answers 30001
  • 最佳答案 8000
  • 用户 6900
  • 常问
  • 回答
  • Marko Smith

    如何从列表中打印最大元素(str 类型)的长度?

    • 2 个回答
  • Marko Smith

    如何在 PyQT5 中清除 QFrame 的内容

    • 1 个回答
  • Marko Smith

    如何将具有特定字符的字符串拆分为两个不同的列表?

    • 2 个回答
  • Marko Smith

    导航栏活动元素

    • 1 个回答
  • Marko Smith

    是否可以将文本放入数组中?[关闭]

    • 1 个回答
  • Marko Smith

    如何一次用多个分隔符拆分字符串?

    • 1 个回答
  • Marko Smith

    如何通过 ClassPath 创建 InputStream?

    • 2 个回答
  • Marko Smith

    在一个查询中连接多个表

    • 1 个回答
  • Marko Smith

    对列表列表中的所有值求和

    • 3 个回答
  • Marko Smith

    如何对齐 string.Format 中的列?

    • 1 个回答
  • Martin Hope
    Alexandr_TT 2020年新年大赛! 2020-12-20 18:20:21 +0000 UTC
  • Martin Hope
    Alexandr_TT 圣诞树动画 2020-12-23 00:38:08 +0000 UTC
  • Martin Hope
    Air 究竟是什么标识了网站访问者? 2020-11-03 15:49:20 +0000 UTC
  • Martin Hope
    Qwertiy 号码显示 9223372036854775807 2020-07-11 18:16:49 +0000 UTC
  • Martin Hope
    user216109 如何为黑客设下陷阱,或充分击退攻击? 2020-05-10 02:22:52 +0000 UTC
  • Martin Hope
    Qwertiy 并变成3个无穷大 2020-11-06 07:15:57 +0000 UTC
  • Martin Hope
    koks_rs 什么是样板代码? 2020-10-27 15:43:19 +0000 UTC
  • Martin Hope
    Sirop4ik 向 git 提交发布的正确方法是什么? 2020-10-05 00:02:00 +0000 UTC
  • Martin Hope
    faoxis 为什么在这么多示例中函数都称为 foo? 2020-08-15 04:42:49 +0000 UTC
  • Martin Hope
    Pavel Mayorov 如何从事件或回调函数中返回值?或者至少等他们完成。 2020-08-11 16:49:28 +0000 UTC

热门标签

javascript python java php c# c++ html android jquery mysql

Explore

  • 主页
  • 问题
    • 热门问题
    • 最新问题
  • 标签
  • 帮助

Footer

RError.com

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

帮助

© 2023 RError.com All Rights Reserve   沪ICP备12040472号-5