2012-04-09 45 views
0

http://jsfiddle.net/udit_sharma/GFknc/提示文字未被刪除

我已經創建了這個小提琴。它有一個輸入框,它有提示文本。當我將注意力集中在這個輸入框時,它的提示 - 正在清除文本。當我關注此輸入框提示時 - 如果用戶沒有輸入任何內容,則文本將再次顯示。

但有一個問題.let說,你是專注於輸入框,並單擊瀏覽器中的另一個選項卡,現在如果你再次回到這個提琴注意到提示文本顯示時,它是空的,而離開這個頁。並且在輸入框和輸入框之間點擊時也沒有清除它。 ?

所以我發現的問題是當我點擊另一個選項卡onblur沒有被調用,所以變量「valueChanged」沒有被設置爲false。因此,再次聚焦時,它不會清除默認的提示 - 文本值。

所以我不明白爲什麼onblur沒有被調用。如果有人對此有所瞭解,請告訴我們還有其他方法可以做到這一點嗎?

+0

我無法重現您的問題... – Luan 2012-04-09 13:03:41

+0

以及我至少可以在鉻 – 2012-04-09 13:05:05

+0

在我的瀏覽器上它工作絕對好,你使用哪個瀏覽器 – 2012-04-09 13:05:38

回答

0

你可以試試這個:

<input type="text" name="placeHolder" placeholder="hy i'm a place holder" /> 

這是一個HTML5特性的話,你可能在你的HTML文件的頂部添加<!DOCTYPE html>

+0

這個工程,但只在網絡瀏覽器(Internet Explorer不是其中之一)。 – Luan 2012-04-09 13:08:39

0

看起來Chrome瀏覽器正在爲文本框兩次觸發onb​​lur。我能夠通過在焦點addOptionInputEle.off('blur').on('blur', onAddOptionBlur);中使模糊事件成爲命名函數和裝訂模糊來解決此問題。然後,在onAddOptionBlur中,我做了一個循環來解除模糊處理程序的所有實例。

while(addOptionInputEle.data('events').blur) 
{ 
    addOptionInputEle.off('blur'); 
} 

注意:除了鉻以外的任何測試。