javascript - fade在悬停时切换下一个元素

标签 javascript jquery html dom

我有以下代码来显示 dom 中单击时的下一个元素,我想将相同的代码转换为可用于简单悬停事件的代码。 jQuery 是否有一个简单的方法来执行类似的操作,或者我应该使用 .bind() 来执行 mouseovermouseout 事件?我知道这应该很简单,我可能只是没有思考清楚。

$('#el').click(function(e){
    e.preventDefault();
    var $prevEl =   $(this).parent().find('.prev-el');
    $prevEl.fadeToggle();
});

值得一提的是,我希望 $prevEl 在悬停触发 #el 元素后保持可见。解决这个问题的最佳方法是什么?

提前谢谢您,

DT

最佳答案

您可以使用 $('#el').mouseover(... 代替 $('#el').click(...,但是当您使用 mouseover 时,您应该使用 fadeIn 而不是 fadeToggle:

$('#el').mouseover(function(e) {
    var $prevEl = $(this).parent().find('.prev-el');
    $prevEl.fadeIn();
});

http://jsfiddle.net/mblase75/eXjTb/3/

如果您希望它在鼠标移开时淡出,请使用 .hover 作为组合两者并保留 fadeToggle 的简写方式:

$('#el').hover(function(e) {
    var $prevEl = $(this).parent().find('.prev-el');
    $prevEl.fadeToggle();
});

http://jsfiddle.net/mblase75/eXjTb/2/

关于javascript - fade在悬停时切换下一个元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7758722/

相关文章:

javascript - jQuery 在用新文本替换 HTML 文本时淡出它,而不是仅仅出现

jquery - jqgrid resizeStop 不触发

javascript - 使用 Jquery 的 Bootstrap 4 动态轮播

javascript - 如何实现 Sencha Touch 项目的文件夹结构?

javascript - 点击提交按钮后输入字段获取(只读)

html - Zerb Foundation 3 - IE7 修复不工作?

html - 如何防止所有单选按钮在评级系统中突出显示

javascript - 下划线绑定(bind) vs jQuery.proxy vs native 绑定(bind)

javascript - 为什么正则表达式不匹配所有数字而不是匹配字符串末尾的数字?

javascript - 如何将主要组件直接导入到 *.vue 文件而不是将其导入到 Vue 中的主 *.js 文件?