|
|
|
| Допустим, есть такой код.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title></title>
<style type="text/css">
<!--
#block {
width: 200px;
height: 150px;
}
-->
</style>
</head>
<body>
<div id="block">
1
</div>
<script language="javascript" type="text/javascript">
window.onLoad = init();
function init() {
var node =document.getElementById('block')
alert(node.style.width);
}
</script>
</body>
</html>
|
Обратить внимание нужно на элемент 'block'. Его ширина задана в css. И вот как теперь получить эту самую ширину скриптом? Приведённый вариант выводит просто пустую строку.
Может, кто имеет решение? | |
|
|
|
|
|
|
|
для: neudor
(22.11.2007 в 11:18)
| |
<script language="javascript" type="text/javascript">
window.onLoad = init();
function init() {
var node =document.getElementById('block')
alert(node.currentStyle.width);
}
</script>
|
| |
|
|
|
|
|
|
|
для: sim5
(22.11.2007 в 11:50)
| | ОГРОМНОЕ спасибо!!! | |
|
|
|
|
|
|
|
для: sim5
(22.11.2007 в 11:50)
| | тут обнаружилось, что сие решение работает только в IE. Вот успел нарыть кроссбраузерный вариант. Вдруг кому пригодится
<script language="javascript" type="text/javascript">
window.onLoad = init();
function init() {
if (typeof document.defaultView == 'undefined')
document.defaultView = {};
if (typeof document.defaultView.getComputedStyle == 'undefined') {
document.defaultView.getComputedStyle = function(element, pseudoElement) {
return element.currentStyle;
}
}
node = document.getElementById(id);
alert(document.defaultView.getComputedStyle(node, null).width);
}
</script>
|
| |
|
|
|