在 mousenter(悬停)上,显示和隐藏(切换)子元素
On mousenter (hover), show and hide (toggle) a child element
有多个div 具有一个公共类。我想使用它的类在悬停时隐藏/显示每个div。我更喜欢使用mouseenter/mouseleave。但问题是$target = this.id;
似乎不起作用。
如何使用类显示/隐藏 DIV?
$(".zz")
.on( 'mouseenter', function() {
$target = this.id;
if( $target.is(':visible') ) return;
$target.hide();
})
.on( 'mouseleave', function() {
$target = this.id
if( !$target.is(':visible') ) return;
$target.show();
});
编辑:js小提琴
与其将所有on()
方法链接在一起,更好的方法是将所有事件合并到一个方法中:
$(document).on({
mouseenter: function() {
$(this).find('div[id^="im"]').hide();
},
mouseleave: function() {
$(this).find('div[id^="im"]').show();
},
click: function() {
// do something else
}
}, ".zz");
希望这有帮助。
请参阅此演示。
尝试使用 jQuery(this)
或 $(this) 来使用您要输入/离开的元素,并希望从中添加/删除隐藏类。
$(".zz")
.on( 'mouseenter', function() {
if( $(this).is(':visible') ) return;
$(this).show();
})
.on( 'mouseleave', function() {
if( !$(this).is(':visible') ) return;
$(this).hide();
});
https://jsfiddle.net/n3syhn67/2/
更新了您的代码。希望对:)有所帮助
$(".zz")
.on( 'mouseenter', function(event) {
$target = $(event.target);
//$target = this.id;
if( $target.is(':visible') ) return;
$target.show();
})
.on( 'mouseleave', function(event) {
$target = $(event.target);
//$target = this.id
if( !$target.is(':visible') ) return;
$target.hide();
});
使用
target = $(this);
this
将引用您想要的 HTMLDiv。您必须将其转换为jQuery对象才能使用jQuery函数.is(':visible')
或.hide()
。
.on( 'mouseenter', function() {
$target = $(this).find("img");
if( $target.is(':visible') ) return;
$target.show();
})
.on( 'mouseleave', function() {
$target = $(this).find("img");
if( !$target.is(':visible') ) return;
$target.hide();
});
我已将目标更改为img
元素,因为如果您隐藏整个潜水,您将永远无法再次将其带回mouseenter
。
编辑:
作为替代解决方案,您可以使用不透明度而不是隐藏。
.on( 'mouseenter', function() {
$target = $(this);
$target.css({opacity:1});
})
.on( 'mouseleave', function() {
$target = $(this);
$target.css({opacity:0});
})
例 仅隐藏图像例 隐藏不透明度的div
相关文章:
- jquery按钮滑动切换隐藏内容和图像切换
- 切换隐藏javascript函数
- 切换隐藏小部件上回流性能的最佳选择
- jquery切换隐藏/显示导航元素
- 切换隐藏/显示谷歌地图标记
- 切换隐藏菜单按钮的显示/隐藏(响应式)
- 奇怪的是,在第二次单击切换隐藏/显示按钮而不是第一次单击后,有两行有效
- Javascript切换隐藏
- 单击功能时切换隐藏ID,再次切换功能时显示
- 切换隐藏/显示 Div 不起作用
- HTML表单根据所选内容切换隐藏/显示字段
- 切换隐藏/显示下拉菜单选择事件
- jquery幻灯片切换:隐藏+新链接
- 如何使用JQuery切换(隐藏/显示)文本区域中包含特定文本的所有行
- 新手jQuery切换/隐藏/显示按钮点击
- 切换隐藏和显示
- 键盘快捷键切换(隐藏/显示)我的chrome扩展
- 切换隐藏/显示表td在.htta
- 侧边栏导航与切换隐藏/显示和字体真棒
- 切换()隐藏/显示不同的元素