我想在焦点输入所在的相同 .input-addition
类中选择.field
类。
我尝试了类似下面的内容,但根本不起作用。
HTML5
<div class="field">
<input type="email" id="emailConfirm" name="emailConfirm" maxlength="254" autocomplete="off">
<span class="input-addition">↳ Re-enter your email to make sure it's correct.</span>
</div>
的jQuery
$(function() {
$("#signup input").focus(function() {
$(this).closest('.input-addition').slideDown("fast").css('display', 'block');
})
});
答案 0 :(得分:3)
我建议:
$('input').on('focus blur', function(e){
$(this).siblings('.input-addition')[e.type === 'focus' ? 'slideDown' : 'slideUp']();
});
如果.input-addition
聚焦,此方法会向向下兄弟input
,并在input
模糊时将其滑开。
如何将其设置为在代码中快速上下滑动?
只需将duration
传递给方法:
$('input').on('focus blur', function(e){
$(this).siblings('.input-addition')[e.type === 'focus' ? 'slideDown' : 'slideUp']('fast');
});
参考文献:
答案 1 :(得分:0)
.input-addition
不是您输入的父母,它是兄弟姐妹:
$(this).siblings('.input-addition').slideDown("fast");
//or
$(this).next('.input-addition').slideDown("fast");
我会使用兄弟,因为如果你在输入和sapn之间插入一些东西,接下来就行不通了。
如果您想要更改校样代码,请使用:
$(this).closest('.field').find('.input-addition').slideDown("fast");