javascript - jQuery:单击时切换功能,因为切换()不再可用

标签 javascript jquery toggle

如果我们有 2 个函数想要交替执行,其中一个位于 mouseover另一个在mouseout ,我们可以在 jQuery 中轻松做到这一点:

var firstFunc = function() {
  console.log("first");
}

var secondFunc = function() {
  console.log("second");
}

$('.class-name').hover(firstFunc, secondFunc);
.class-name {
  display: inline-block;
  padding: 5px 15px;
  cursor: pointer;
  font-family: Arial, sans-serif;
  font-size: 14px;
  border: 2px solid #069;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<div class="class-name">Hover me</div>

toggle() 弃用以来,我们不能用它来交替触发这两个函数,在click上事件。

事实上,我想同时使用:hover在桌面上和 click在移动设备上。

问题:

  1. 我们应该用什么来代替?
  2. 如果以类似于 hover() 的方式使用会有什么帮助?方法,而不使用 if 子句?

最佳答案

更好的方法是创建单独的事件。

$(document).on('mouseover', '.class-name', function () {
    console.log("first");
});

$(document).on('mouseout', '.class-name', function () {
    console.log("second");
});

关于javascript - jQuery:单击时切换功能,因为切换()不再可用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51630004/

相关文章:

jquery - 提交禁用字段

javascript - 我在使用 jQuery 切换侧边栏时遇到问题

button - react native : onPress: How can I toggle the button text and function call?

jquery - 在 jQuery 中选择类中的下一个实例

javascript - Vimeo 播放器不在 vimeoPlayer.play() 上播放;在脚本中,但它在控制台中

jquery - 使用远程数据加载语义 UI 下拉列表

javascript - 在指令中定义 ng-model 后,Angularjs ng-model 不起作用

javascript - 如何让我的 CSS slider 自动播放?

javascript - 将值传递给可拖动和可放置的数组

javascript - 从 Angular 6 中的对象中删除值