網頁

2013年6月22日

[javascript] 解決firefox在onblur事件中無法強制focus問題

當在使用onblur事件進行欄位資料檢查,若檢查不通過進行強制focus動作,在IE及Chrom都可以正常,但是在firefox瀏灠器上,focus卻沒有作用,在此提供可以兼容各瀏灠器方式。
範例:
<input type="text" id="myname" name="myname" value="" size="20" onblur="check();">

<script>
function check(){
 var o = document.getElementById("myname");
 if (o.value == ""){
  alert("Error!");
  setTimeout(function(){o.focus();}, 0);
 }
}
</script>
在onblur事件中,將focus放在setTimeout內執行,就可以解決focus對firefox沒有作用問題。