将鼠标悬停在缩略图上即可启动新图像;悬停结束后新图像仍然存在

2024-03-16

我有一个缩略图。

将鼠标悬停在该图像上时,附近会出现一个全新的图像,正如预期的那样。

挑战
缩略图悬停结束后,新图像必须保留。仅当用户将鼠标移开新图像时,新图像才会消失。

仅 CSS 解决方案
今天对 CSS 进行了几个小时的实验后,我设计出的最佳解决方案包括:hover伪类,transition, and opacity。对于 JS 中的简单任务来说,这是一个复杂而复杂的解决方案。另外,该解决方案甚至不是那么好,可能只能在较新的浏览器中工作。因此,我不再寻找纯 CSS 解决方案(尽管我对您对此的想法持开放态度)。

脚本语言
我不太了解 JS,但我编写了一些代码(可能结构很差),这让我更接近目标。我现在使用的 JS 在缩略图鼠标悬停时触发新图像,并在鼠标离开时隐藏新图像。

问题是代码不会重置(因此用户必须刷新页面才能使悬停效果再次起作用)。

这是我到目前为止所拥有的:

HTML

<ul>
<li id="thumbnail">
    <a href="#">THUMBNAIL IMAGE</a>
        <ul>
            <li> 
                <a href="#">NEW IMAGE NEARBY</a>
            </li>
        </ul>
</li>
</ul>

CSS

ul > li > ul {display: none;}

ul > li#thumbnail > a {
     background-color: #f00;
     color: #fff;
     padding: 5px;
}

ul > li > ul > li {
     position: absolute;
     top: 50px;
     left: 175px;
     background-color: #0f0;
     color: #fff;
     padding: 15px; 
}

ul li ul.permahover {display: block;}

JavaScript

$("#thumbnail").one("mouseover", function() {
$("#thumbnail ul").addClass('permahover');
});

$("#thumbnail ul").mouseleave(function(){
$(this).hide();
}); 

http://jsfiddle.net/nyc212/Ey2bK/2/ http://jsfiddle.net/nyc212/Ey2bK/2/

任何帮助将不胜感激。谢谢。


您正在使用的它没有重置的原因one() http://api.jquery.com/one/,附加的处理程序使用one()每个事件类型的每个元素最多执行一次。

尝试使用on() http://api.jquery.com/on/而是如下:

$("#thumbnail").on("mouseover", function () {
  $("#thumbnail ul").addClass('permahover');
});
$("#thumbnail ul").mouseleave(function () {
  $("#thumbnail ul").removeClass('permahover');
});

更新了小提琴 http://jsfiddle.net/Ey2bK/5/

边注: on()在 jQuery 1.71 之前不可用,因此我在 fiddle 中更新了 jQuery 的版本,( on()是目前推荐的附加事件处理程序的方法)对于旧版本的 jQuery,您可以使用bind()

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

将鼠标悬停在缩略图上即可启动新图像;悬停结束后新图像仍然存在 的相关文章

  • 如何制作没有 ng-repeat 的模板并使用 Angular-drag-and-drop-lists 将数据传递到 $scope?

    我想用角度拖放列表 https github com marceljuenemann angular drag and drop lists使用我自己的网格模板到所见即所得编辑器 如何构建我自己的 HTML 模板而不需要ng repeat因
  • 如何解决 Typescript 构建中的错误“找不到模块 'jquery'”

    我目前在 ts 文件的顶部有这个import require jquery 我这样做是因为我试图在我的打字稿文件中使用 jquery 但我似乎无法编译它 因为它返回标题中所述的错误 我正在使用 ASP NET CORE 脚本文件夹 tsco
  • Jquery一键提交多个同名表单

    我有动态创建的循环表单 我需要一键提交所有表单 我正在遵循下面的代码 你能建议我怎么做吗 谢谢
  • 日期出现奇怪的错误,“未捕获非法访问”

    所以我试图找到最新的DateJavascript 可以处理 我把它减少到 9 月 275760 并增加了我开始捕获未捕获的天数illegal access例外new Date 09 24 275760 to new Date 10 13 2
  • 如何创建适合屏幕宽度的等宽/高框? [复制]

    这个问题在这里已经有答案了 我正在尝试建立一个网站 其中有很多宽度和高度相等的框 例如 我有一个页面 其中并排有两个相同大小的框 简单的解决方案是将宽度和高度设置为 50vw 这在出现滚动条之前效果很好 我已经用谷歌搜索了几个小时 但无法理
  • 代码镜像错误:未捕获错误:扩展集中无法识别扩展值([对象对象])

    全部 我目前正在从事一个React Electron项目 该项目的目标是完成一个Markdown编辑器 当我配置codemirror 该程序报告错误说 Uncaught Error Unrecognized extension value
  • 使用css bootstrap时如何仅向一列添加右边框?

    我正在尝试使用CSS引导框架 http getbootstrap com css tables在我的项目中 我正在使用带有以下类的表table table bordered table striped 我想删除除第一列之外的所有列的边框 这
  • 表格行未扩展到全宽

    我有一个表格 当我将表格的宽度设置为 100 并将表格行的宽度设置为 100 时 没有任何反应或宽度发生变化 Table Normal position relative display block margin 10px auto pad
  • 对于只触及我的工作表的 Google 表格脚本,收到“此应用程序未经验证”

    我正在编写一个 Google Sheets 脚本 我只想访问与 gs 文件关联的同一电子表格中的数据 似乎我应该有权在自己的电子表格中运行脚本 但是每当我运行一个函数时 我都会得到一个This app isn t verified信息 我该
  • 在 JavaScript 循环之外声明变量可以提高速度和内存?

    C 也有类似的问题 但我们没有看到 JavaScript 的任何问题 在循环内声明变量是否可以接受 假设循环有 200 次迭代 使用样本 2 相对于样本 1 是否有性能要求 内存和速度 我们使用 jQuery 来循环 它提高了我们将 var
  • 在 Javascript 中连接空数组

    我正在浏览一些代码 我想知道这有什么用处 grid push concat row 根据我的理解 它等同于 grid push row 为什么要大惊小怪 连接 你想使用 concat当您需要展平数组并且没有由其他数组组成的数组时 例如 va
  • Javascript - 水波纹效果

    我需要 JS 上的脚本 它将以 水波纹 样式更改 images html 抱歉 6MB GIF 文件 http fcuunited ru temp listening2 gif http fcunited ru temp listening
  • 用于交互式图形绘制的轻量级 JavaScript 库? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我有兴趣了解用于绘制交互式图表的最轻量级 javascript 库 我掌握的数据主要是与海洋研究相关的科学数据 我知道一些 jquery
  • HTML 锚点,禁用样式

    我有一些 html 锚链接代码 与文档的其余部分不同 我希望它看起来不是链接 有没有一种简单的方法可以禁用由于将文本包装在锚标记中而引起的样式更改 而不必强行使其相同 即 如果我更改正文字体样式 我不必也更改其他一些 link东西 将颜色设
  • 在 CKEditor 中设置字体大小和字体系列

    我正在使用 ckeditor 我想问一下这个插件如何设置font family和font size 我尝试过使用 CKEDITOR config font defaultLabel Arial CKEDITOR config fontSiz
  • JavaScript 相对路径

    在第一个 html 文件中 我使用了一个变量类别链接 var categoryLinks Career prospects http localhost Landa DirectManagers 511 HelenaChechik Dim0
  • Jquery - 选择选项后如何获取选项的特定数据类型?

    我将直接跳到标记 然后解释我想要做什么 HTML 选择选项
  • 如何确定所有角度2分量都已渲染?

    当所有 Angular2 组件完成渲染时 是否会触发一个角度事件 For jQuery 我们可以用 function 然而 对于 Angular2 当domready事件被触发 html 只包含角度组件标签 每个组件完成渲染后 domrea
  • CSS溢出文本显示在几行中,没有断字

    我有一些长文本显示在 div 中 该 div 具有固定的宽度和高度 我希望文本显示在几行上 作为 div 高度 并且句子单词不会中断 一行中的单词前缀和下一行中的继续 此外 我想在末尾添加省略号最后一句话 CSS white space n
  • 循环内的异步性

    我正在使用 jQuery getJSON 用于从一组实用程序的给定 URL 检索数据的 API 我真的很想找到一种为每个实用程序重用代码 完全相同 的方法 由于循环的执行与 ajax 调用无关 因此我无法找到保留循环值的方法 我知道这个描述

随机推荐

  • 错误:getaddrinfo EAI_AGAIN(docker、nginx)

    我知道此错误与 DNS 查找超时错误相关 意味着它是网络连接错误或代理相关错误 但是我不知道如何解决它 我使用 docker compose yml 里面有 3 个容器 这是我的 docker compose yml 作为链接 docker
  • 数据表加载速度非常慢

    我使用数据表作为页面上某些下拉列表的数据源 但注意到页面在回发期间非常慢 我已经追踪到这里 DataTable dt new DataTable dt Load sqlCmd ExecuteReader this takes ages sq
  • 如何使用百分比作为参数调整 HTML 中的图像大小?

    我想调整我网站上的图像大小 我知道如何通过之前调整图像大小或计算宽度和高度并以像素为单位设置值来做到这一点 但我多次使用不同尺寸的同一张图片 因此如果我可以相对于图像本身的大小调整图像的大小 那么我会花费更少的时间 img src imag
  • 数组按字母顺序排序?

    假设我有两个字符串数组 名为 arrayone 和 arraytwo 我将如何按照字母顺序 从 A 到 Z 对 arrayone 进行排序 同时仍然保持与第二个数组的关系 如果您想知道 arrayone 和 arraytwo 中的内容 1
  • 通过数据库链接立即执行

    是否可以通过数据库链接在远程数据库上执行动态 PL SQL 我正在寻找类似的东西 l stmt begin null end execute immediate l stmt dblink 上面的语法显然是错误的 我明白了PLS 00201
  • 为什么要选择 64 位操作系统? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 关于这些问题 哪个 Vista 版本最适合开发人员计算机 https stackoverflow com questions 17653
  • Azure 删除用户对 API 的同意

    从我的前端应用程序中 当我请求访问令牌时 我传递了两个需要与令牌一起返回的范围 我没有在 Azure 门户中向应用程序授予这些同意 相反 用户必须从弹出窗口明确表示同意 一旦用户授予同意 我就会获得具有所需范围的访问令牌 但如何撤销 Azu
  • 如何优化 testng 和 selenium 测试

    在我的实习中 我必须使用 TestNG 和 selenium 来测试 Web 应用程序 但我有一个问题 有时硒或浏览器由于某种随机原因无法工作 因此工作测试被标记为 失败 为了避免这种情况 我可以使用注释 Test invocationCo
  • jqGrid 动态更改特定行的编辑类型

    继此post https stackoverflow com questions 7535942 solved jqgrid how to set custom editoptions based on initial column val
  • Python-将日期时间列转换为秒[重复]

    这个问题在这里已经有答案了 我有一个日期列 称为 时间 其中包含天 小时 分钟等 timedelta 我在数据框中创建了一个新列 我想创建一个新列 并将 时间 列转换为秒 我确实找到了如何转换列 如何根据现有 timedelta 列的秒数转
  • 如何在Python中执行双线性插值

    我想使用 python 执行线性插值 我想要插入高度的 GPS 点示例是 B 54 4786674627 L 17 0470721369 使用具有已知坐标和高度值的四个相邻点 n 54 5 17 041667 31 993 54 5 17
  • caffe: **group** 参数是什么意思?

    我已阅读有关的文档group param group g 默认 1 如果 g gt 1 我们将每个过滤器的连接限制为输入的子集 具体地 将输入和输出通道分为g组 第i个输出组通道将仅与第i个输入组通道连接 但首先我不明白它们的确切含义 其次
  • 使用 jquery 从批量文本中提取所有电子邮件地址

    我有下面的文字 email protected cdn cgi l email protection assdsdf lt email protected cdn cgi l email protection gt rodnsdfald f
  • 如何对数据记录查询中的结果进行排序

    我正在使用 datomic 和 play 框架 游戏非常精彩 datomic 速度很快 所以总体来说是一个很好的组合 因为 我是 datomic 和数据日志 即查询语言 datomic 使用 的新手 所以我无法对结果进行排序 就像我们一样
  • twitter4j - 通过 ID 获取推文

    当我有推文 ID 和用户 ID 时 如何获取推文 我有一个包含以下行的文件 userID tweetID 我想我应该去 Query query new Query huh QueryResult result twitter search
  • 从 SQL 查询中捕获计数

    C cs 文件 中从 SQL 命令获取计数的最简单方法是什么 SELECT COUNT FROM table name into an int多变的 Use SqlCommand ExecuteScalar http msdn micros
  • CGContextSaveGState:无效上下文 0x0 仅在设备上发生错误

    更新 我正在使用 XCode 7 Beta 和 Swift 2 0 当我尝试在 iPhone 上运行我的应用程序时 出现以下 3 个错误
  • 在 Kubernetes 集群上使用 etcdctl 时出现错误:“证书由未知机构签名”

    我正在运行 minikube 并且正在尝试列出 ETCD 上的密钥 我下载了最新的etcdctl来自github的客户端 https github com etcd io etcd releases download v3 3 18 etc
  • 如何使用Gson将Json转换为Java对象[重复]

    这个问题在这里已经有答案了 假设我有 json 字符串 userId 1 userName Yasir 现在我有一个类 User class User int userId String userName setters and gette
  • 将鼠标悬停在缩略图上即可启动新图像;悬停结束后新图像仍然存在

    我有一个缩略图 将鼠标悬停在该图像上时 附近会出现一个全新的图像 正如预期的那样 挑战缩略图悬停结束后 新图像必须保留 仅当用户将鼠标移开新图像时 新图像才会消失 仅 CSS 解决方案今天对 CSS 进行了几个小时的实验后 我设计出的最佳解