2010-07-25 59 views
2

我有固定寬度的文本類型輸入。如果用戶要在該字段中輸入一個長整型值,我希望當輸入不再有焦點時顯示值的開始。使用JavaScript顯示模糊處理HTML輸入值的開始

FF和IE中的默認行爲使字段值的視圖處於相同狀態。另一方面,Chrome似乎表現得如我所願,它顯示了價值的開始。

我試圖通過textRange對象的Select()方法重置IE中的插入符號位置,但這似乎是重新調用導致遞歸鏈的模糊事件(不知道爲什麼,但這是一個單獨的問題)。

有沒有人有任何建議?必須有一個簡單的方法來做到這一點?

回答

3

我把這段代碼安裝在一起,它可以在IE8上運行。 1ms的的setTimeout是因爲IE自動顯示如果文本框的值是在一排(令人驚奇的)設置兩次第二值:(其中自動執行它)

function resetPosition(element){ 
    var v = element.value; 
    element.value=""; 
    setTimeout(function(){element.value = v;},1); 
} 

上IE7還測試,和不顯眼的鉻。

+0

謝謝。我曾嘗試清除並重置該值,但並未考慮使用setTimout。適用於我。 – James 2010-07-25 15:06:47