jQuery 添加一个类 - 我尝试过的所有方法都会在单击时删除该类

2024-02-13

我正在使用一个 3D 旋转按钮,其中每个面都有不同的短语,但两者都是指向同一 URL 的链接。我最初使用普通的旧 css :hover 旋转立方体按钮,但我注意到当您单击该按钮时它会重置。仅当鼠标不再位于按钮上时,它才应旋转回起始位置。

我创建了一支使用所有标记和样式的笔,并且尝试了四种方法来添加名为“flip”的类以在悬停时设置样式,但这四种方法中的每一种都具有与普通旧 css 相同的效果:悬停方法,单击鼠标即可重置。我在笔中评论了 #2、3 和 4,因为它们都产生相同的结果,而第一个只是一个简单的“toggleClass”方法。这是四个 JS 片段和笔的链接。

// #1 Story Button Toggle Class On Hover To Rotate - Resets on Click
    $('.story-button').hover(function () {
      $(this).toggleClass('flip');
      return false;
  });

// #2 Story Button Add/Remove Class On Hover To Rotate - Resets on Click
$('.story-button').hover(
  function () {
    $(this).addClass('flip');
  },
  function () {
    $(this).removeClass('flip');
  }
);

// #3 Story Button Add/Remove Class on 'mouseover To Rotate - F's Up the markup/styles on mouseover
$('.story-button').mouseover(function(){
    $(this).removeClass().addClass('flip');
    }).mouseout(function(){
    $(this).removeClass().addClass('flip');       
});

// #4 Story Button Add/Remove Class on 'mouseenter' and 'mouseleave' To Rotate - Still Rotates back on click
 $('.story-button')
    .mouseenter(function() {   
        $(this).addClass('flip');
    })
    .mouseleave(function() {
        $(this).removeClass('flip');
 });

以及笔的链接:http://codepen.io/andandandandrew/pen/OPXOxP?editors=011 http://codepen.io/andandandandrew/pen/OPXOxP?editors=011

预先感谢您的帮助/建议!

PS,如果有人知道为什么这可以在 codepen 上工作,但不能在我的本地 mamp 服务器上工作(构建一个 wordpress 站点,使用 codekit 在编译/缩小时没有 JSHint 错误),那就太棒了。


问题是,如果您添加一个,则悬停事件位于正在转换的元素上div周围的button并聆听鼠标悬停在div那么你应该没有问题。

HTML:

<div class="btnContainter">
   <button class="story-button">
      <a class="front" href="javascript:(void)">FRONT</a>
      <a class="back" href="javascript:(void)">BACK</a>
   </button>
</div>

CSS:

.btnContainter {
   display: block;
   width: 15em;
   height: 3em;
   margin: 0 auto;
}

jQuery:

$('.btnContainter').hover(function () {
    $(this).children('.story-button').toggleClass('flip');
    return false;
);

codePen http://codepen.io/anon/pen/zxBPma

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

jQuery 添加一个类 - 我尝试过的所有方法都会在单击时删除该类 的相关文章

随机推荐

  • 如何使用 Objective C 更改 iOS 设备的系统壁纸/背景?

    我很好奇是否可以通过您自己的应用程序以编程方式更改 iOS 设备的系统壁纸 背景 Apple 不提供公共 API 来执行此操作 用户必须通过 设置 应用程序选择要用作壁纸的图片 您可以让您的应用将图片保存到用户保存的照片中 并指示用户手动更
  • 如何在 Symfony 2.0 中使用元标签

    我不知道如何在我网站的所有页面中添加元标签 正确的 您可以将元标记放入网站的基本布局中 对于更复杂的愿望 您可以将它们放入一个块中 如果您愿意 您可以在特定模板中覆盖它们 有关更多信息 请查看 Symfony2 文档创建和使用模板 http
  • Javascript 正则表达式模式 \W 是否包含空格?

    我正在使用这个表达 W g匹配除数字 字母和空格之外的所有字符 好像是包含空格的 我将如何构建一个不包含空格的正则表达式 a z0 9 s ig 解释 Character class which matches characters NOT
  • 找到沿两个平面相交的线

    我试图在 3D 中绘制由两个平面相交形成的线 但我无法理解数学 这已被解释过here http mathinsight org intersecting planes examples and here http mathworld wol
  • 如何使用 Espresso 点击 Android 图库

    我们目前正在使用 Espresso 测试一个 Android 应用程序 我们要测试的功能之一是从本地图片库中选择图片 图像 我们可以一路调出图库视图 但无法在结果窗口中从 最近 下载 图库 中进行选择 下面包含了我们如何取得如此进展的一个片
  • Watir Webdriver 计算 UL 列表中的项目数量

    我进行了一些搜索 但无法找到合适的答案 基本上我有一个长度不同的无序列表 我想遍历列表 做一些其他事情 然后返回并选择列表中的下一个项目 当我定义循环应该迭代的次数时 我可以很好地做到这一点 因为我知道列表中的项目数量 但是我不想为每个测试
  • python 3,尝试从多个 HID 输入读取,Raspberry Pi

    我有一个条形码扫描仪连接到我的 RasPi 没有任何 tty 这意味着没有显示器的无头 换句话说 数字输入的键盘记录器 该扫描仪可读取 GTIN 或 EAN 等数字条形码 它有效 脚本在启动时由 sh 启动 我使用的脚本如下所示 impor
  • 合并多个 BatchEncoding 或从 BatchEncoding 对象列表创建张量流数据集

    在标记标记任务中 我使用转换器标记生成器 它输出 BatchEncoding 类的对象 我分别对每个文本进行标记 因为我需要从文本中提取标签并在标记后重新排列它们 由于子标记 但是 我找不到一种方法可以从 BatchEncoding 对象列
  • 如何通知其他应用程序我的应用程序是 Windows 桌面的一部分?

    我想在 C 中为 Windows 创建一个 工具栏 并希望将其放置在 Windows 桌面的顶部空间 我希望其他 Windows 程序无法覆盖我的应用程序 我还希望其他应用程序将我的窗口视为桌面的一部分 以便当它们最大化时 您仍然可以看到我
  • Matlab调试:跳过下一行而不执行

    问题 问题的完整描述如下 有人对如何欺骗 Matlab 跳过一行或多行代码有建议吗 mex java 重写一些内部Matlab功能 有谁知道在哪里db 代码文件可能位于 如果存在 Matlab 中有几个函数可以在调试 运行程序时进行流量控制
  • 将所有提交导出到 ZIP 文件或目录中

    如何将所有提交导出到 ZIP 文件 包含全部文件 不仅仅是补丁 差异 myproject commit1 67d91ab zip myproject commit2 9283acd zip myproject commit3 c57daa6
  • 子集参数在 pandas.io.formats.style.Styler.format 中起什么作用?

    的公共文档pandas io formats style Styler format https pandas pydata org pandas docs stable reference api pandas io formats st
  • 实际上撤消 git stash pop

    这个问题 https stackoverflow com questions 20038056 undo git stash pop有相同的标题 但它是NOT同样的问题 这个问题实际上是在问 丢弃 git stash pop 的结果 这个问
  • 互联网是否需要身份验证才能实际连接才能下载?

    我的应用程序需要使用互联网连接从链接下载一些文件 我有一个使用代理并需要身份验证的互联网连接 不知何故 当我尝试连接到互联网时 它从不要求进行此身份验证 因此无法下载文件 我想问的是 有什么方法可以检测用户的互联网连接是否需要身份验证才能从
  • 如何启用枚举继承

    我正在编写一个库 其中有一组预定义的枚举值 比方说 我的枚举如下所示 public enum EnumClass FIRST first SECOND second THIRD third private String httpMethod
  • urlencode 形式的泽西乔达时间 ISO 8601 参数

    我正在使用 Jersey 1 17 1 并定义了接受 application x www form urlencoded 的 REST 服务 我想接受 ISO 8601 格式的参数 b 并让 Jersey 将其映射到 Joda DateTi
  • Iphone 中的多语言应用

    如何在应用程序中更改应用程序的默认语言 我正在尝试将应用程序语言更改为阿拉伯语 但我不知道如何完成此操作 有一种方法 首先创建一个不同的文件夹 命名为ar lproj并把localizable String 希望以下示例代码对您有所帮助 您
  • 如何删除字符串第一次出现之前和最后一次出现之后的所有行?

    猫抢 txt My Dashboard Fnfjfjf random test 00 50 1 01 56 My Notes No data found Change Language English Submit Estimation o
  • 为什么 @DisplayName 在 JUnit 5 中不能为我工作?

    出于某种原因 我真的很难让显示名称在带有 Kotlin 的 JUnit 5 中得到真正的尊重 这是我出于示例目的创建的测试文件 import org assertj core api Assertions import org junit
  • jQuery 添加一个类 - 我尝试过的所有方法都会在单击时删除该类

    我正在使用一个 3D 旋转按钮 其中每个面都有不同的短语 但两者都是指向同一 URL 的链接 我最初使用普通的旧 css hover 旋转立方体按钮 但我注意到当您单击该按钮时它会重置 仅当鼠标不再位于按钮上时 它才应旋转回起始位置 我创建