Вызов функции из другой функции.. ??
Здравствуйте, уважаемые!
Помогите найти ошибку в коде, никак не заработает:
function Show(objId, hBlock) {
var obj = document.getElementById(objId);
if (obj.offsetHeight < hBlock) {
obj.style.height = (obj.offsetHeight + 10) + "px";
setTimeout (function(){Show(objId, hBlock)}, 30);
}
}
function showLargePicture(src,w,h) {
var div = document.getElementById('image_container');
var leftvar = (screen.width-w)/2;
var topvar = (screen.height-h)/4;
div.style.top = topvar + 'px';
div.style.left = leftvar + 'px';
div.className = 'big_image';
var i= Show('image_container',h);
div.innerHTML = '<img src=' + src + '>';
}
Выдает стандартное сообщение: "Предполагается наличие объекта". Где ошибка? Все работало, пока не вставил функцию плавного изменения размеров. Спасибо. |
Скорее всего ошибка в том, как вы используете эти функции.
|
Вот такой код стоит в начале страницы:
<div id=image_container class=invisible onClick="SetInvisible()"></div> А вот так вызывается функция:
<img src="img.gif" onClick="showLargePicture('img.gif',300,300);">
Вот таблица стилей:
.invisible {display:none}
.big_image {
position:fixed;
z-index:3;
display:block;
width:auto;
height:auto;
}
|
Удалить тему не удастся, поэтому лучше объяснюсь - нашёл строку с ошибкой с помощью IE8: оказалось в идентичном коде для плавного закрытия окошка вместо "минуса" затесалось "тире"...
obj.style.height = (obj.offsetHeight -- 10) + "px"; Код, стало быть, рабочий, только технически некорректный - высота увеличивается, а ширина - нет... :haha: |
| Часовой пояс GMT +3, время: 02:06. |