星期四, 10月 26, 2006

標準的DOM+JavaScript設定屬性

今天和Randy討論IE7相容性時,他提到設定style的不相容,我建議使用DOM 2+JavaScript Core,於是寫了一個範例來測試,最後DOM標準寫法在Sofari、IE6、IE7、Firefox都可以正常使用。

建議像我一樣不熟DOM模型的人,可以用Aptana這套免費好用的JavaScript IDE。

注意:今天發生一個陷阱,obj.style.width="100px"; 第一次我誤打成 obj.style.width="100px;", 多一個分號在Firefox居然可以執行,但其他Browser就認為錯誤,IE稱為"引數錯誤"。另外obj.style.width="0px"會錯,obj.style.width="0"才是正確的寫法,不可不注意。
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>測試</title>
</head>
<body>
<script language="JavaScript" type="text/javascript">
<!--
function click2(xyz){
var obj;
obj = document.getElementById(xyz);
obj.style.width = "100px";
obj.style.height = "20px";
obj.value = "屬性已設定";
}
-->

</script>
<form name="form1" method="post" action="">
<input type="text" id="t22" name="t22" value="" style="width: 50px; height: 50px;"/><input type="button" name="b12" id="b12" value="按我" onclick="javascript:click2('t22')"/>
</form>
</body>
</html>

沒有留言: