Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 11.06.2012, 15:21
Новичок на форуме
Отправить личное сообщение для vitaly777 Посмотреть профиль Найти все сообщения от vitaly777
 
Регистрация: 11.06.2012
Сообщений: 2

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 );



Буду рад любому совету!

спасибо.
Ответить с цитированием
  #2 (permalink)  
Старый 11.06.2012, 15:42
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

...

Последний раз редактировалось Deff, 11.06.2012 в 16:09.
Ответить с цитированием
  #3 (permalink)  
Старый 11.06.2012, 15:47
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

Сообщение от Deff
Кроссбраузерный - resize элемента
и в чем же он ресайз элемента?
тут ты сажаешь обрабаотчик на элемент:
document.getElementById('resize').onclick
а вот тут:
= onresize  =
уже на window.onresize, то есть просто одна функция висит на window.onresize и на элементе клика. В чем же тут перехват изменения размера? И причем тут клик вообще? И как твой пример вообще иллюстрирует событие onresize?
__________________
хм Russians say завтра but завтра doesn't mean "tomorrow" it just means "not today."
HTML5 history API рассширение для браузеров не поддерживающих pushState, replaceState
QSA CSS3 Selector Engine
Ответить с цитированием
  #4 (permalink)  
Старый 11.06.2012, 16:09
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

devote,
Похоже Ти прав - я соврал
Ответить с цитированием
  #5 (permalink)  
Старый 11.06.2012, 21:45
Новичок на форуме
Отправить личное сообщение для vitaly777 Посмотреть профиль Найти все сообщения от vitaly777
 
Регистрация: 11.06.2012
Сообщений: 2

ээ.. я что-то пропустил тут ?

так как в принципе.. ? нормальное решение или что-то надо переделать ?
Ответить с цитированием
  #6 (permalink)  
Старый 13.03.2018, 10:23
Новичок на форуме
Отправить личное сообщение для Dmitrij01 Посмотреть профиль Найти все сообщения от Dmitrij01
 
Регистрация: 01.08.2012
Сообщений: 4

А если картинку поставить как фоновое изображение?
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как создать event, эмулирующий enter Artanis Events/DOM/Window 7 16.07.2019 06:40
event + setTimeout fsingle Events/DOM/Window 2 02.05.2012 09:07
window resize nikolaich ExtJS 4 07.07.2011 10:02
swf crop resize x-yuri Ваши сайты и скрипты 2 14.03.2011 05:58
Как получить список пользовательских функций объекта window? Маэстро Events/DOM/Window 13 03.07.2010 13:20