使用jQuery的1.6.1,因爲我有以下HTML:jQuery事件;防止 「兄弟姐妹」,從觸發事件eachothers
<div class="control">
<label>My Control</label>
<input type="text" />
<input type="text" />
</div>
當<div class="control">
的<input>
(以下僅control
)聚焦時,<label>
( 與position: relative;
)動畫:
$('.control :input').bind('focus', function(e){
$(this).prevAll('label').animate({
'left': '-50px'
}, 250);
});
當模糊,所述<label>
返回:
.bind('blur', function(e){
$(this).prevAll('label').animate({
'left': '0px'
}, 250);
});
然而,如果<input>
元件獲得焦點,然後之一模糊作爲焦點相同control
內切換到另一<input>
(經由標籤或鼠標點擊)的事件當然還是火,而<label>
來回動畫。
如何強制模糊事件觸發只有當焦點丟失從所有在給定的control
輸入?
謝謝@Cybernate - 幾乎就像一個魅力。也許這是我的錯,因爲我沒有提到會有多個「控制」。從「控制」切換到「控制」時,由於第二秒調用了「clearTimeout()」,模糊無法在第一次觸發。 – Dan
@Tomcat:但模糊首先觸發,然後關注第二。 – Chandu
@TomcatExodus:它工作得很好。檢查此jsfiddle:http://jsfiddle.net/Tn9sV/ – Chandu