Javascript 是否有更简单的方法在鼠标操作中显示/隐藏元素?
我这里有一段代码,我似乎一直在使用类似的东西:Javascript 是否有更简单的方法在鼠标操作中显示/隐藏元素?,javascript,jquery,live,Javascript,Jquery,Live,我这里有一段代码,我似乎一直在使用类似的东西: $(".fieldv").live('mouseenter', function() { $(this).children('.edit-icon').show(); }).live('mouseleave', function() { $(this).children('.edit-icon').hide(); }); 是否有一种更简单、更清晰的方法来显示/隐藏鼠标操作中的元素,无论是悬停还是单击元素?或者类似的…为什么要使用J
$(".fieldv").live('mouseenter', function() {
$(this).children('.edit-icon').show();
}).live('mouseleave', function() {
$(this).children('.edit-icon').hide();
});
是否有一种更简单、更清晰的方法来显示/隐藏鼠标操作中的元素,无论是悬停还是单击元素?或者类似的…为什么要使用JavaScript
默认情况下,您需要隐藏图标:
.fieldv .edit-icon { display: none; }
然后此CSS应用于悬停(并且仅适用于悬停)
你可以试试这个:
$(".fieldv").hover(function(){
//mouseover
,function(){
//mouseout
});
使用$(“.class”).hover(函数(){},函数(){}) 我正要发布这个+1+1你不应该假设
块
,但这是一个更好的方法。@JonathanSampson是的,我打字时有这个想法。补充说明。谢谢。(当然,他的例子会通过jQuery使用block
和none
)我会,但我需要在鼠标悬停时隐藏元素。您可以将鼠标悬停在隐藏的元素上吗?此外,您不能将委托与一起使用。hover()
这里已经有了合适的答案。至于您选择的方法(.live()),根据您使用的jQuery版本,您可能希望在代码的其他部分使用.delegate()(=1.7)而不是.live()和类似事件
$(".fieldv").hover(function(){
//mouseover
,function(){
//mouseout
});
$(".fieldv").hover(function() {
$(this).children('.edit-icon').show();
}, function() {
$(this).children('.edit-icon').hide();
});