top
アプリケーションの上部パネルにデフォルトでプロパティを-80px
設定して、その一部を除いて非表示にしようとしています。そして、ユーザーがその部分にマウスを置いたままホバーすると、再び下にスライドします。
問題は、このdivにがあり、ユーザーがマウスポインターを離してもtextbox
、ユーザーがこれを入力しているときにdivが上にスライドしないようにしたいのtextbox
ですが、残念ながら、これを行う方法がわかりません。これが私のコードです。
index.html
<div id="taskInput">
<div id="controllers">
<input type="text" name="mainTask" id="mainTask">
<button id="addMain">Add</button>
<button id="resetMain">Reset</button>
</div>
</div>
この部分のcss:
#taskInput {
background: red;
width:606px;
height:43px;
padding: 22px;
box-shadow: 0px 3px 4px -3px black;
position: absolute;
z-index : 0;
top:0px;
}
script.js
$(function(){
$("#taskInput").delay(400).animate({top:-80}, 500,function(){});
$("#taskInput").mouseover(
function(){
$(this).stop().animate({top:0}, 200, function(){});
});
$("#taskInput").mouseout(function(evt){
$(this).stop().animate({top:-80}, 200, function(){});
})
$("#mainTask").focus(function(){
//i though i can put something here to stop mouseout event or something
})
})