鼠标悬停在特定文本上时如何显示编辑操作图标

Nan*_*niG 5 javascript jquery backbone.js marionette

如何在特定文本上的鼠标悬停和鼠标悬停时显示/隐藏编辑图标。

这是我的 html 代码片段

<ul>
    <li>
        <a id="pop" href="javascript:;;" data-content="test Desc" data-id="123">
            <span class="testNameInfo">Test</span>
        </a>
        <div class="pull-right icons-align">
            <a href="javascript:;;" class="editInline"><i class="fa fa-pencil"></i>..</a>
            <a href="javascript:;;"><i class="fa fa-plus"></i></a>
            <a href="javascript:;;"><i class="fa fa-times"></i></a>
        </div>
    </li>
</ul>
Run Code Online (Sandbox Code Playgroud)

当页面加载时,fa-pencil 图标处于隐藏状态。当我将鼠标悬停在文本上时,它应该显示 fa-pencil 图标。剩余的图标(添加和删除)始终处于显示状态。

这是我隐藏 fa-pencil 图标的 javascript

$("a.editInline").css("display","none");
Run Code Online (Sandbox Code Playgroud)

我正在使用主干和牵线木偶 js 框架,所以我需要在视图中注册事件。

请让我知道摆脱我的问题的最佳方法是什么。

Gur*_*Rao 2

您可以执行以下操作:

$('.testNameInfo').on('mouseover mouseout',function(){
     $(this).closest('li').find('.editInline').toggle();
     //find the closest li and find its children with class editInLine and 
     //toggle its display using 'toggle()'
});
Run Code Online (Sandbox Code Playgroud)

更新

演示版

@JamieBarker 提出了他的观点,这在这里是有效的,所以我建议尝试下面的代码

$("a.editInline").css("display","none");
$('li').on('mouseover mouseout',function(){
     $(this).find('.editInline').toggle();
     //find its children with class .editInLine and 
     //toggle its display using 'toggle()'
});
Run Code Online (Sandbox Code Playgroud)