Focusout 事件在输入事件 jQuery 中的第一次激活时不起作用
Focusout event doesn't work on 1st activation in on input event jQuery
我有一个输入和 focus
事件。当它聚焦时,使父 div 变大,当它不聚焦时,使其变小,但我在输入事件中有 focusout
事件,以确保它是否为空。
但是当你聚焦输入、输入内容、删除它然后点击离开该输入(focusout)时它工作得很好并且它按照我想要的方式工作。
刷新站点后它会停止工作,因为它 "forgets" 是您在那里输入并删除的。
这是 jsfiddle,我想我不必 post 那 code,
当一切都在那里时 -> https://jsfiddle.net/rnotx7rg/
如果我明白你的问题是什么,我认为你不需要输入事件,但你只需要在 focusout 事件上检查输入字段是否为空。
这是 JS 部分:
$('.emailLog').focus(function() {
$('.emailLogdiv').css({
'height': '50px'
});
$('.emailLogLabel').css({
'bottom': '50px',
'font-size': '1.1em'
});
$('.emailLog').css({
'color': 'black'
});
});
$('.emailLog').focusout(function() {
if ($(this).val() === '') {
$('.emailLogdiv').css({
'height': '6px'
});
$('.emailLog').css({
'color': '#656565'
});
$('.emailLogLabel').css({
'bottom': '5px',
'font-size': '1.5em'
});
} else {
$('.emailLogdiv').css({
'height': '50px'
});
$('.emailLog').css({
'color': 'black'
});
$('.emailLogLabel').css({
'bottom': '50px',
'font-size': '1.1em'
});
}
});
这是更新后的 jsfiddle
我有一个输入和 focus
事件。当它聚焦时,使父 div 变大,当它不聚焦时,使其变小,但我在输入事件中有 focusout
事件,以确保它是否为空。
但是当你聚焦输入、输入内容、删除它然后点击离开该输入(focusout)时它工作得很好并且它按照我想要的方式工作。
刷新站点后它会停止工作,因为它 "forgets" 是您在那里输入并删除的。
这是 jsfiddle,我想我不必 post 那 code,
当一切都在那里时 -> https://jsfiddle.net/rnotx7rg/
如果我明白你的问题是什么,我认为你不需要输入事件,但你只需要在 focusout 事件上检查输入字段是否为空。
这是 JS 部分:
$('.emailLog').focus(function() {
$('.emailLogdiv').css({
'height': '50px'
});
$('.emailLogLabel').css({
'bottom': '50px',
'font-size': '1.1em'
});
$('.emailLog').css({
'color': 'black'
});
});
$('.emailLog').focusout(function() {
if ($(this).val() === '') {
$('.emailLogdiv').css({
'height': '6px'
});
$('.emailLog').css({
'color': '#656565'
});
$('.emailLogLabel').css({
'bottom': '5px',
'font-size': '1.5em'
});
} else {
$('.emailLogdiv').css({
'height': '50px'
});
$('.emailLog').css({
'color': 'black'
});
$('.emailLogLabel').css({
'bottom': '50px',
'font-size': '1.1em'
});
}
});
这是更新后的 jsfiddle