JSでのブラウザ互換性の問題の解決
1368 ワード
1.cssのstyleスタイルを行内ラベルに書くと、呼び出すときにObjを直接使用します。style.ツールバーの
2.しかし、cssのstyleスタイルを書いたとき、Objを使う必要があります。currentStyle.属性(IEブラウザ専用)
var oDiv = document.getElementById('love');
alert(oDiv.currentStyle['width']);
3.CHROMなどの高度なブラウザを使用するにはgetComputedStyle(オブジェクト、null)['プロパティ']を使用する必要があります。
var oDiv = document.getElementById('love');
alert(getComputedStyle(oDiv,null)['width']);
4.ブラウザを互換化するには、1つの方法を書くだけでこの問題を解決します。
<style type="text/css">
#abc{width: 320px;height: 300px;clear:both;margin-left:10px;display:none;}
</style>
<div id="abc"> </div>
<script>
window.onload = function()
{
var obj = document.getElementById('abc');
alert(getStyle(obj,'width'));
}
/* */
function getStyle(obj,sName) {
if (typeof(obj.currentStyle) == 'undefined') {
return getComputedStyle(obj,null)[sName];
} else {
return obj.currentStyle[sName];
}
}
</script>
</code></pre>
<br/>
<br/>
</div>
</div>
</div>
</div>
</div>