[英]JQuery blur event
我在表單上有一個文本區域和一個“添加”按鈕。 默認情況下,文本區域顯示為縮小和灰色。 重點突出時,將通過更改樣式來突出顯示。 在模糊時,它應該返回到以前的狀態。 除了突出顯示文本區域外,添加注釋還應切換為可見和隱藏。 問題是,當我在文本區域中輸入數據並單擊添加按鈕時,blur事件隱藏了添加按鈕,並且添加按鈕上的事件從未觸發。
看來我的問題還不清楚...解決方案類似於執行blur事件,只是下一個焦點元素不是“添加”按鈕...
如果輸入了文本,是否可以安全地假設您不想切換按鈕,因為用戶打算輸入注釋? 如果是這樣,您可以執行以下操作:
$(textBox).blur(function() {
if($(this).val().length == 0) {
//change the style
//hide the button
}
})
僅當在文本區域中未輸入任何內容時,才需要取消突出顯示文本區域並隱藏“添加”按鈕:
$('textarea').blur(function() {
if($(this).val() != '') {
// unhighlight textarea
// hide "add" button
}
});
這樣,如果用戶實際在其中輸入了某些內容,則無論該字段是否具有焦點,用戶始終可以看到該字段和按鈕。
在焦點停留在文本框和按鈕被隱藏之間放置一小段延遲,例如
function textBox_blur(evt)
{
window.setTimeout(
function() { button.style.display = 'none'; },
200 // length of delay in milliseconds
);
}
這將為點擊處理留出足夠的時間(盡管您可能希望按延遲時間播放)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.