したがって、focus() で展開され、blur() で元の位置に戻るこのテキストエリアがあります。
私が抱えている問題は、ボタンがクリックされたときにぼかし機能の伝播を停止する (テキストエリアに焦点を合わせたままにする) ことです。
$("#mytextarea").focus(function(){
$(this).animate({"height": "50px",}, "fast" );
});
$("#mytextarea").blur(function(e){
if (e.target.id === 'button'){
return false;
e.stopPropagation();
e.cancelBubble = true;
}
else{
$('#mytextarea').animate({"height": "20px",}, "fast" );
}
});
私が思いついた解決策は、次のものを置き換えることです:
$("#mytextarea").blur(function(e)
と
$(document).click(function(e)
しかし、正直なところ、私は document.click を使用したくありません。私のページはすでに js に重きを置いており、この方法を使用すると遅くなります。ここにフィドルがあります