我对 Javascipt/Jquery 有点陌生(我早就知道它了,但才真正开始搞砸)。
我正在尝试为以下标记编写一个简单的工具提示函数:
<ul class="exec-List">
<li class="give-tooltip">
<img src="test.png" />
<span title="Loloscoped" class="tooltip-span">Content</span>
</li>
<li>
<img src="test.png" />
<span title="Loloscoped" class="tooltip-span">Content</span>
</li>
</ul>
这是我到目前为止所拥有的:
function simple_tooltip( target_items, target_class, give_class )
{
$( target_items ).each(function( i )
{
var current_item = $(this);
if( current_item.hasClass( 'give-tooltip' ) )
{
alert( 'has tooltip class' );
var current_child = current_item.children(this);
if( current_child.hasClass( 'tooltip-span' ))
{
current_item.mouseenter(function()
{
current_child.fadeIn( 400 );
});
current_item.mouseleave(function()
{
current_child.fadeOut( 400 );
});
}
}
});
}
问题是,淡入和淡出的选择器是针对整个项目,而不是类“工具提示跨度”的跨度。我相信是这样的,因为当鼠标离开<li>
元素时,整个元素就<li>
消失了。当鼠标进入时<span>
显示出来,但我相信如果<li>
它也被隐藏它也会淡入。
我在选择孩子时做错了什么?
我会使用:
display: none;
在另一个班级:
display: block !important;
在 CSS 中,但我需要一个淡入淡出时间,这是你无法通过display
属性实现的。