Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/376.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 单击其他元素或鼠标悬停后隐藏输入框,但保留一次焦点_Javascript_Jquery_Html_Css - Fatal编程技术网

Javascript 单击其他元素或鼠标悬停后隐藏输入框,但保留一次焦点

Javascript 单击其他元素或鼠标悬停后隐藏输入框,但保留一次焦点,javascript,jquery,html,css,Javascript,Jquery,Html,Css,如何在鼠标点击或单击其他元素时隐藏输入框并保持一次焦点?下面是我当前的代码,鼠标正在工作,但一旦把焦点放在显示的输入框上,它们就会立即被隐藏。请参阅下面的演示,然后单击“编辑”按钮。输入框会显示出来,但一旦聚焦就会消失 $(“.edit”)。单击(函数(){ 变量$span=$(本); $(this).closest('tr').find('.textdisplay').hide(); $(this).closest('tr').find('.editbox').css(“display”,“

如何在鼠标点击或单击其他元素时隐藏输入框并保持一次焦点?下面是我当前的代码,鼠标正在工作,但一旦把焦点放在显示的输入框上,它们就会立即被隐藏。请参阅下面的演示,然后单击“编辑”按钮。输入框会显示出来,但一旦聚焦就会消失

$(“.edit”)。单击(函数(){
变量$span=$(本);
$(this).closest('tr').find('.textdisplay').hide();
$(this).closest('tr').find('.editbox').css(“display”,“inline”);
var ID=$(this.attr('ID');
var removidedit=ID.replace('edit_','');
$(this.hide();
$(“#保存#”+删除它).css(“显示”、“内联”);
});
$(“.save”)。单击(函数(){
变量$span=$(本);
$(this).closest('tr').find('textdisplay').css(“display”,“inline”);
$(this).closest('tr').find('.editbox').hide();
var ID=$(this.attr(“ID”);
var removiedsave=ID.replace('save_','');
$(this.hide())
$(“编辑”+删除保存).css(“显示”、“内联”);
});
$(文档).mouseup(函数(){
$(“.editbox”).hide();
$(“.textdisplay”).show();
$(“.edit”).css(“显示”、“内联”);
$(“.save”).css(“显示”、“无”)
});
。保存{
显示:无;
}
桌子{
宽度:400px;
}
}
表td{
边框:1px实心;
}
.垃圾{
字体大小:14px;
左侧填充:5px;
}
.保存,.编辑{
左侧填充:5px;
位置:绝对位置;
字体大小:14px;
}
.编辑框{
字体大小:14px;
显示:无;
}
.文本显示{
字体大小:14px;
浮动:左;
字体大小:正常;
单词包装:打断单词;
空白:正常;
}

数据1A
数据1B
数据2A
数据2B

所以只需将您的鼠标点更改为以下代码:

$(document).mouseup(function(e){
    if ($(e.target).hasClass('editbox')) return false;
    $(".editbox").hide();
    $(".textdisplay").show();
    $(".edit").css("display","inline");
    $(".save").css("display","none")
});     
就像这把小提琴一样:


编辑:对不起,$(这)是我之前使用的错误上下文…

所以只需将鼠标悬停更改为以下代码:

$(document).mouseup(function(e){
    if ($(e.target).hasClass('editbox')) return false;
    $(".editbox").hide();
    $(".textdisplay").show();
    $(".edit").css("display","inline");
    $(".save").css("display","none")
});     
就像这把小提琴一样:


编辑:对不起,$(这)是我之前使用的错误上下文…

所以只需将鼠标悬停更改为以下代码:

$(document).mouseup(function(e){
    if ($(e.target).hasClass('editbox')) return false;
    $(".editbox").hide();
    $(".textdisplay").show();
    $(".edit").css("display","inline");
    $(".save").css("display","none")
});     
就像这把小提琴一样:


编辑:对不起,$(这)是我之前使用的错误上下文…

所以只需将鼠标悬停更改为以下代码:

$(document).mouseup(function(e){
    if ($(e.target).hasClass('editbox')) return false;
    $(".editbox").hide();
    $(".textdisplay").show();
    $(".edit").css("display","inline");
    $(".save").css("display","none")
});     
就像这把小提琴一样:



编辑:抱歉$(这)是我以前使用的错误上下文…

是您的mouseup函数,它再次隐藏了框,因为如果我要编辑,我在textbox中单击,然后在mouseup中删除它们。。。。注释您的mouseup函数,它将按预期工作。。。。啊,不,好的,不,我理解你的问题,只需要在失去焦点时才需要它。。。让我想想:)谢谢你的评论,是的,这很有效,但是如果我点击其他元素,我怎么能再次隐藏输入框呢?试试这个小提琴:我刚刚添加了一个检查,从鼠标开始的目标不是输入框,如果你检查目标是否有类“editbox”,然后返回False,那可能会更好。这是你的mouseup函数,这会再次隐藏框,因为如果我想编辑,我会在文本框中单击,然后在鼠标悬停时将其删除。。。。注释您的mouseup函数,它将按预期工作。。。。啊,不,好的,不,我理解你的问题,只需要在失去焦点时才需要它。。。让我想想:)谢谢你的评论,是的,这很有效,但是如果我点击其他元素,我怎么能再次隐藏输入框呢?试试这个小提琴:我刚刚添加了一个检查,从鼠标开始的目标不是输入框,如果你检查目标是否有类“editbox”,然后返回False,那可能会更好。这是你的mouseup函数,这会再次隐藏框,因为如果我想编辑,我会在文本框中单击,然后在鼠标悬停时将其删除。。。。注释您的mouseup函数,它将按预期工作。。。。啊,不,好的,不,我理解你的问题,只需要在失去焦点时才需要它。。。让我想想:)谢谢你的评论,是的,这很有效,但是如果我点击其他元素,我怎么能再次隐藏输入框呢?试试这个小提琴:我刚刚添加了一个检查,从鼠标开始的目标不是输入框,如果你检查目标是否有类“editbox”,然后返回False,那可能会更好。这是你的mouseup函数,这会再次隐藏框,因为如果我想编辑,我会在文本框中单击,然后在鼠标悬停时将其删除。。。。注释您的mouseup函数,它将按预期工作。。。。啊,不,好的,不,我理解你的问题,只需要在失去焦点时才需要它。。。让我想想:)谢谢你的评论,是的,这很有效,但是如果我单击其他元素,我怎么能再次隐藏输入框呢?试试这个小提琴:我刚刚添加了一个检查,从鼠标开始的目标不是输入框,如果你检查目标是否有类“editbox”,可能会更好我明白你在这篇文章上的意思了,非常感谢!我使用了下面的代码,它的工作$(document.mouseup(函数(事件){if($(event.target).hasClass(“editbox”))返回false;没问题。希望你能从中做一个很好的项目-看起来很有希望;)我明白你在这篇文章上的意思了,非常感谢!我使用了下面的代码,它工作了!$(document.mouseup(函数(事件){if($(event.target).hasClass(“editbox”))返回false;没问题。希望你能从中做一个很好的项目-看起来很有希望;)我明白你在这篇文章上的意思了,非常感谢!我使用了下面的代码,它工作了!$(document.mouseup(function(event){if($(event.target).hasClass(“editbox”))return false;没问题。希望你能把它变成一个很好的项目-看起来很有希望;)我明白你在这篇文章上的意思了,非常感谢!我使用了下面的代码,它工作了!$(文档)。mouseup(函数(事件){if($)eve