Event resize ( window )
Здравствуйте!
Задача у меня такая, при изменении размера окна, нужно изменять размер картинки (с определёнными условиями). ( средствами CSS не получилось ). Как-то я это решил ( на IE9, Mozilla, Opera, Chrome работает ) А вот на IE8 подвисает. Может по другому надо обрабатывать это событие ? функция:
function resize()
{
if ( typeof( elDiv ) == 'undefined' )
var elDiv = document.getElementById('resolution');
if ( typeof( elImg ) == 'undefined' )
var elImg = document.getElementById('img_bg');
if ( window.innerHeight )
{
var scrHeight = window.innerHeight;
var scrWidth = window.innerWidth;
}
else
{
var scrHeight = document.documentElement.offsetHeight;
var scrWidth = document.documentElement.offsetWidth;
}
var imgHeight = elImg.offsetHeight;
var imgWidth = elImg.offsetWidth;
var xH = scrHeight - imgHeight;
var xW = scrWidth - imgWidth;
if ( xH >= 50 && xW <= 0 )
elImg.style.width = '100%';
else
elImg.style.width = ( scrHeight - 50 ) * 2 + 'px';
//elDiv.innerHTML = 'W:' + xW + ' H:' + xH;
//elDiv.innerHTML = 'browser screen W:' + scrWidth + ' H:' + scrHeight + '<br />' + 'div size W:' + imgWidth + ' H:' + imgHeight;
}
обработка события:
if ( document.all )
window.attachEvent('onresize', function(){resize();});
else
window.addEventListener('resize', function(){resize();} , false );
Буду рад любому совету! спасибо. |
...
|
Цитата:
тут ты сажаешь обрабаотчик на элемент:
document.getElementById('resize').onclick
а вот тут: = onresize =уже на window.onresize, то есть просто одна функция висит на window.onresize и на элементе клика. В чем же тут перехват изменения размера? И причем тут клик вообще? И как твой пример вообще иллюстрирует событие onresize? |
devote,
Похоже Ти прав - я соврал |
ээ.. я что-то пропустил тут ? :)
так как в принципе.. ? нормальное решение или что-то надо переделать ? |
А если картинку поставить как фоновое изображение?
|
| Часовой пояс GMT +3, время: 22:02. |