- Код: Выделить всё
function view(title,f,xx,yy){
var blockFoto = document.getElementById('bigFoto');
var x,y;
if (self.innerHeight) {
x = self.innerWidth;
y = self.innerHeight;
} else if (document.documentElement && document.documentElement.clientHeight) {
x = document.documentElement.clientWidth;
y = document.documentElement.clientHeight;
} else if (document.body) {
x = document.body.clientWidth;
y = document.body.clientHeight;
}
blockFoto.style.left= x/2 - xx/2 + "px";
blockFoto.style.top = y/2 - yy/2 - 50 + "px";
blockFoto.style.width = xx + "px";
blockFoto.style.height = yy + 100 + "px";
blockFoto.style.display = "block";
blockFoto.innerHTML = '<img id="imgBig" src="' + f + '" width="' + xx +'" height="' + yy + '" style="visibility:hidden" onload="this.style.visibility=\'visible\'" ' +
'alt="' + title + '" title="' + title +'" />' + '<div class="bigFotoTitle">' + title + '<div align="right"><a href="JavaScript: void(0);" onClick="document.getElementById(\'bigFoto\').style.display=\'none\'">закрыть</a></div>';
}
Вызов view('подпись', 'путь/к/картинке', ширина, высота)
Нормально работает в ФФ и даже Опере (свят-свят). Более того, и в семёрке ИЕ работает. А вот в шестом ИЕ не хочет отрабатывать событие onLoad вставленной методом innerHTML картинкой. И картинка просто остаётся инвизибл.
Пробывал добавлять событие для картинки:
- Код: Выделить всё
document.getElementById('imgBig').attachEvent('onload', 'this.style.visibility="visible"');
после чего добавлял картинке свойство src - ффект тот же. Везде работает кроме ИЕ 6.0
Может кто подскажет откуда рога растут у сего таракана?