Tuesday, August 5, 2014

ปัญหา document.getElementById('myInput').focus(); ไม่ทำงานบน IE

ปัญหานี้มักเจอเวลาที่สั่งให้ focus ทันทีที่โหลดหน้าขึ้นมา ซึ่งถ้าเป็น browser อื่นๆที่ไม่ใช่ IE จะไม่มีปัญหาอะไร แต่ถ้าต้องการให้ทำงานได้บน IE ด้วยจำเป็นต้องใส่ delay เข้าไปด้วยเพราะบางทีถ้าหน้าไหนที่โหลดหน้าช้า IE จะไม่ทำคำสั่งย้อนหลังให้
ตัวอย่างการใช้งาน

<html>
 
<head>
<title>focus is working in IE</title>
</head>
<body>
 
<form >
    <input id="myInput" type="text" value='testing'><br>
</form>
</body>
 
 <script type="text/javascript">
 setTimeout(function() { document.getElementById('myInput').focus(); }, 1000);
</script>
 
</html>
อ้างอิงจาก http://www.mkyong.com/javascript/focus-is-not-working-in-ie-solution/

No comments:

Post a Comment