Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> как вызвать window.onresize внутри prototype 
:(
    Опции темы
StreetPeople
Дата 5.2.2009, 12:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 24
Регистрация: 7.7.2007

Репутация: нет
Всего: 1



Добрый день!

Ниже упрощёный вариант моего кода, который закрывает полупрозрачным DIV элементом весь BODY:

Код

var Wait = function(){
    this._cover = $('cover_001');

    this.recalculate();
    window.onresize = this.recalculate;

    this.cover();
}
//----------------------------------------------------------------------------------------------------
Wait.prototype._cover;                                            // Объект слоя
Wait.prototype.opacity        =    0.4;                            // Прозрачность слоя
//--------------------------------------------------------------
Wait.prototype.rushWidth    =    0;                                // 
Wait.prototype.rushHeight    =    0;                                // 
Wait.prototype.rushX        =    0;                                // 
Wait.prototype.rushY        =    0;                                // 
//----------------------------------------------------------------------------------------------------
Wait.prototype.cover = function(){                                // Накрыть
    this.recalculate();

    this._cover.style.width            =    this.rushWidth+"px";
    this._cover.style.height        =    this.rushHeight+"px";
    this._cover.style.left            =    this.rushX+"px";
    this._cover.style.top            =    this.rushY+"px";
    this._cover.style.opacity        =    this.opacity;
    this._cover.style.filter        =    "alpha(opacity = "+(this.opacity*100)+")";
}

Wait.prototype.recalculate = function(){                        // Пересчитать ширину, высоту, позицию и т.п.
    if(this.__object.parentNode===null){
        this.rushWidth            =    this.getClientWidth();
        this.rushHeight            =    document.height || (document.body.offsetHeight+30);
        this.rushX                =    0;
        this.rushY                =    0;
    }else{
        this.rushWidth            =    this.__object.offsetWidth;
        this.rushHeight            =    this.__object.offsetHeight;
        this.rushX                =    this.findPos(this.__object)[0];
        this.rushY                =    this.findPos(this.__object)[1];
    }
}



Хочу сделать, так чтобы при изменении окна все параметры (ширина, высота, положение XY) пересчитывались... Пересчёт как вы видите идёт в функции Wait.recalculate(), как мне её можно вызвать таким образом чтобы передать в неё как аргумент сам класс Wait, к котором требуется пересчёт? Или как сделать так чтобы функция вызывалась прямо внутри нового класса Wait...



Код который используется в HTML

Код

    var screenFreeze_Object = new Wait();
    screenFreeze_Object.cover();


Это сообщение отредактировал(а) StreetPeople - 5.2.2009, 13:03
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0579 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.