针对1个元素不是所有jquery js
我在网格中有几个跨度,我有一个小问题。当我悬停1个元素时,所有隐藏跨度都被激活。我想只激活一个盘旋。针对1个元素不是所有jquery js
$('.tried-it').live('mouseover', function(){
$('.tried-times').fadeIn(500).addClass("show-me").removeClass("hide-me");
});
$(".tried-it").live('mouseout',function() {
$(".tried-times").fadeOut(500).removeClass("show-me").addClass("hide-me");
return false;
});
和跨度:
<span class="tried-times hide-me">30 times</span>
<span class="tried-it"></span>
这似乎是一个奇怪的方式来组织你的元素,但如果他们只是放置一个接一个,我会做一些事情,如:
$(document).on({
mouseenter: function(){
$(this).prev('.tried-times').addClass("show-me")
.removeClass("hide-me")
.fadeIn(500);
},
mouseleave: function() {
$(this).prev('.tried-times').fadeOut(500)
.removeClass("show-me")
.addClass("hide-me");
}
}, '.tried-it');
这是一个FIDDLE
谢谢你的帮助,但没有运气。 – 2012-07-20 16:11:35
@ user1174849 - 我添加了一个小提琴,也许这使得它更容易理解它是如何工作的? – adeneo 2012-07-20 16:40:10
我已经看到你的小提琴。它在小提琴内工作。但在我的内容它没有:( – 2012-07-20 17:19:49
像这样的事情应该工作,就只有触发事件的元素的情况下运行。请注意,选择是$(this)
代替$('.tried-times')
:
$('.tried-it').live('mouseover', function(){
$(this).fadeIn(500).addClass("show-me").removeClass("hide-me");
});
$(".tried-it").live('mouseout',function() {
$(this).fadeOut(500).removeClass("show-me").addClass("hide-me");
return false;
});
在没有任何反应的鼠标:)。在鼠标出元素是不可见的:)酷功能,但这不是我想要实现的。我曾尝试过:$(“。tried-it”)。hover(function(){(012)}()。 removeClass(“hide-me”);}); – 2012-07-20 16:13:41
是你的整个页面的跨度结构? – 2012-07-20 15:44:24
是的..这是一个跨度结构 – 2012-07-20 16:47:49