jQuery .focusOut()取决于下一个选定元素的条件操作

The*_*lTy 4 jquery

我有一个带有文本输入#usernameInput和链接的表格单元格#saveLink.使用jQuery我有一个分配给click事件的函数#saveLink.

我想要实现的是,当#usernameInput失去焦点时我想隐藏它.除非失去焦点#saveLink.换句话说,如果用户点击#saveLink我要隐藏的#usernameInput其他地方,否则请在上面调用click事件#saveLink.

我没有问题处理,$('#usernameInput').focusout()但我无法检测是否单击了保存链接.

这是我到目前为止所拥有的.

<script type="text/javascript">

$('#usernameInput').focusout(function ()
{

    if (!$('#saveLink').is(':focus'))
    {
        $('#usernameInput').hide();
    }
    return;

});</script>
Run Code Online (Sandbox Code Playgroud)

Mar*_*man 5

我想要实现的是,当'#usernameInput'失去焦点时,我想隐藏它.除非它失去了对'#saveLink'的关注.换句话说,如果用户单击"#saveLink"以外的任何位置,我想隐藏"#usernameInput",否则请调用"#saveLink"上的click事件.

也许你可以将一个事件绑定到身体上,然后检查一下 e.target

$("body").click(function(event){
  if(!$(event.target).is("#saveLink")){
    $("#usernameInput").hide();
  }
});
Run Code Online (Sandbox Code Playgroud)

免责声明这只是现在的伪代码...稍微更新一下.

  • 这很有用,但是当标签丢失焦点时呢? (2认同)