Добрый день!
Ниже упрощёный вариант моего кода, который закрывает полупрозрачным 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();
|
|