?? wo_modal.js
字號:
{
if (this._hiddenSelects[i].Element.style.visibility == 'hidden')
this._hiddenSelects[i].Element.style.visibility = this._hiddenSelects[i].Visibility;
}
this._hiddenSelects = null;
}
if (onCloseFunction)
onCloseFunction(returnValue);
this.Dispose();
}
}
Wo_Modal.Refresh = function()
{
if (this._animationHandle)
window.clearTimeout(this._animationHandle);
this.Dispose();
if (this._isShown && this._lastModalInfo)
this.Open(this._lastModalInfo.Url, this._lastModalInfo.Width, this._lastModalInfo.OnCloseFunction, this._lastModalInfo.Height, this._lastModalInfo.OnCloseFunction, this._lastModalInfo.X, this._lastModalInfo.Y);
}
Wo_Modal._initialize = function()
{
this._modalMask = document.createElement('div');
this._modalMask.style.width = 'auto';
this._modalMask.style.height = 'auto';
this._modalMask.style.position = 'absolute';
this._modalMask.style.display = 'none';
var mm = this._modalMask;
if (this.WindowMaskCssClasses.length > 0)
{
mm.className = this.WindowMaskCssClasses[0];
for (var i = 1; i < this.WindowMaskCssClasses.length; i++)
{
mm.appendChild(document.createElement('div'));
mm = mm.childNodes[0];
mm.className = this.WindowMaskCssClasses[i];
mm.style.width = 'auto';
mm.style.height = 'auto';
}
}
document.body.appendChild(this._modalMask);
this._modalAnimationMask = document.createElement('div');
this._modalAnimationMask.style.position = 'absolute';
this._modalAnimationMask.style.display = 'none';
this._modalAnimationMask.style.overflow = 'hidden';
this._modal = document.createElement('div');
this._modal.style.width = 'auto';
this._modal.style.height = 'auto';
this._modal.style.position = 'absolute';
this._modal.style.display = 'none';
var m = this._modal;
if (this.WindowCssClasses.length > 0)
{
m.className = this.WindowCssClasses[0];
for (var i = 1; i < this.WindowCssClasses.length; i++)
{
m.appendChild(document.createElement('div'));
m = m.childNodes[0];
m.className = this.WindowCssClasses[i];
m.style.width = 'auto';
m.style.height = 'auto';
}
}
this._modalTitle = document.createElement('div');
m.appendChild(this._modalTitle);
if (this.WindowTitleCssClasses.length > 0)
{
this._modalTitle.className = this.WindowTitleCssClasses[0];
for (var i = 1; i < this.WindowTitleCssClasses.length; i++)
{
this._modalTitle.appendChild(document.createElement('div'));
this._modalTitle = this._modalTitle.childNodes[0];
this._modalTitle.className = this.WindowTitleCssClasses[i];
}
}
this._modalTitle.onmousedown = new Function('event', 'window.' + this._variableName + '._startDrag(event); return false;');
this._modalClose = document.createElement('div');
this._modalTitle.appendChild(this._modalClose);
var mc = this._modalClose;
if (this.WindowCloseCssClasses.length > 0)
{
mc.className = this.WindowCloseCssClasses[0];
for (var i = 1; i < this.WindowCloseCssClasses.length; i++)
{
mc.appendChild(document.createElement('div'));
mc = mc.childNodes[0];
mc.className = this.WindowCloseCssClasses[i];
}
}
this._modalClose.onclick = new Function('window.' + this._variableName + '.Close();');
this._modalTitle.appendChild(document.createElement('span'));
var e = document.createElement('div');
e.style.clear = 'both';
this._modalTitle.appendChild(e);
this._modalContent = document.createElement('div');
m.appendChild(this._modalContent);
if (this.WindowContentCssClasses.length > 0)
{
this._modalContent.className = this.WindowContentCssClasses[0];
for (var i = 1; i < this.WindowContentCssClasses.length; i++)
{
this._modalContent.appendChild(document.createElement('div'));
this._modalContent = this._modalContent.childNodes[0];
this._modalContent.className = this.WindowContentCssClasses[i];
}
}
this._modalIframe = document.createElement('iframe');
this._modalIframe.src = this.LoadingHtmlUrl;
this._modalIframe.width = '100%';
this._modalIframe.border = '0';
this._modalIframe.frameBorder = 'no';
this._modalIframe.style.borderLeftWidth = '0px';
this._modalIframe.style.borderRightWidth = '0px';
this._modalIframe.style.borderTopWidth = '0px';
this._modalIframe.style.borderBottomWidth = '0px';
this._modalContent.appendChild(this._modalIframe);
this._modalFooter = document.createElement('div');
m.appendChild(this._modalFooter);
var mf = this._modalFooter;
if (this.WindowFooterCssClasses.length > 0)
{
mf.className = this.WindowFooterCssClasses[0];
for (var i = 1; i < this.WindowFooterCssClasses.length; i++)
{
mf.appendChild(document.createElement('div'));
mf = mf.childNodes[0];
mf.className = this.WindowFooterCssClasses[i];
}
}
this._modalResize = document.createElement('div');
mf.appendChild(this._modalResize);
var e = document.createElement('div');
e.style.clear = 'both';
mf.appendChild(e);
var mr = this._modalResize;
if (this.WindowResizeCssClasses.length > 0)
{
mr.className = this.WindowResizeCssClasses[0];
for (var i = 1; i < this.WindowResizeCssClasses.length; i++)
{
mr.appendChild(document.createElement('div'));
mr = mr.childNodes[0];
mr.className = this.WindowResizeCssClasses[i];
}
}
this._modalResize.onmousedown = new Function('event', 'window.' + this._variableName + '._startResize(event); return false;');
this._modalAnimationMask.appendChild(this._modal);
document.body.appendChild(this._modalAnimationMask);
this._initialized = true;
}
Wo_Modal.Dispose = function()
{
if (this._initialized)
{
if (this._animationHandle)
window.clearTimeout(this._animationHandle);
this._isShown = false;
this._isOpening = false;
if (document && document.body)
{
document.body.removeChild(this._modalAnimationMask);
document.body.removeChild(this._modalMask);
this._modalClose.onclick = null;
this._modalTitle.onmousedown = null;
this._modalResize.onmousedown = null;
this._modal = null;
this._modalTitle = null;
this._modalClose = null;
this._modalAnimationMask = null;
this._modalMask = null;
this._modalIframe = null;
this._modalResize = null;
this._modalFooter = null;
this._modalContent = null;
}
this._initialized = false;
}
}
Wo_Modal._animate = function(targetValue, nextValue, step, acceleration)
{
if (this._animationHandle)
window.clearTimeout(this._animationHandle);
if (!this._isOpening)
return;
var currValue = parseInt(this._modal.style.top, 10);
if ((step < 0 && currValue < targetValue) || (step > 0 && currValue > targetValue) || Math.abs(step) < 1)
{
// complete
if (this._hiddenSelects)
{
for (var i = 0; i < this._hiddenSelects.length; i++)
this._hiddenSelects[i].Element.style.visibility = 'hidden';
}
this._modal.style.top = targetValue + 'px';
this._modal.style.position = 'static';
this._modalAnimationMask.style.overflow = 'visible';
this._animationHandle = null;
if (!this._isResizing && !this._isDragging)
this._modalIframe.style.display = 'block';
this._isOpening = false;
this._lastWindowInfo = this._getWindowInfo();
this._checkForScrollResizeHandle = window.setTimeout(new Function('window.' + this._variableName + '._checkForScrollResize();'), 999);
}
else
{
// continue animation
this._modal.style.top = nextValue + 'px';
nextValue = nextValue + step;
if (step > 0 && nextValue > targetValue)
nextValue = targetValue;
else if (step < 0 && nextValue < targetValue)
nextValue = targetValue;
step = step * acceleration;
this._animationHandle = window.setTimeout(new Function(this._variableName + '._animate(' + targetValue + ',' + nextValue + ',' + step + ',' + acceleration + ');'), 19);
}
}
Wo_Modal._startDrag = function(event)
{
if (!this._initialized)
this._initialize();
if (!event)
event = window.event;
this._moveModalInfo = new Object();
this._moveModalInfo.StartMouseX = event.pageX ? event.pageX : event.screenX;
this._moveModalInfo.StartMouseY = event.pageY ? event.pageY : event.screenY;
this._moveModalInfo.StartModalX = this._lastModalInfo.X;
this._moveModalInfo.StartModalY = this._lastModalInfo.Y;
this._moveModalInfo.Button = event.button;
document.onmouseup = new Function('event', 'window.' + this._variableName + '._endDrag(event); return false;');
document.onmousemove = new Function('event', 'window.' + this._variableName + '._drag(event); return false;');
this._modalIframe.style.display = 'none';
this._isDragging = true;
}
Wo_Modal._endDrag = function(event)
{
if (!this._initialized)
this._initialize();
this._isDragging = false;
this._moveModalInfo = null;
document.onmouseup = null;
document.onmousemove = null;
this._modalIframe.style.display = 'block';
}
Wo_Modal._drag = function(event)
{
if (!this._initialized)
this._initialize();
if (!event)
event = window.event;
if (event.button != this._moveModalInfo.Button)
{
this._endDrag(event);
return;
}
var eventX = typeof(event.pageX) != 'undefined' ? event.pageX : event.screenX;
var eventY = typeof(event.pageY) != 'undefined' ? event.pageY : event.screenY;
var xChange = eventX - this._moveModalInfo.StartMouseX;
var yChange = eventY - this._moveModalInfo.StartMouseY;
this.Open(null, this._lastModalInfo.Width, this._lastModalInfo.Height, this._lastModalInfo.OnCloseFunction, this._moveModalInfo.StartModalX + xChange, this._moveModalInfo.StartModalY + yChange, true);
}
Wo_Modal._startResize = function(event)
{
if (!this._initialized)
this._initialize();
if (!event)
event = window.event;
this._resizeModalInfo = new Object();
this._resizeModalInfo.StartMouseX = event.pageX ? event.pageX : event.screenX;
this._resizeModalInfo.StartMouseY = event.pageY ? event.pageY : event.screenY;
this._resizeModalInfo.StartModalWidth = this._lastModalInfo.Width;
this._resizeModalInfo.StartModalHeight = this._lastModalInfo.Height;
this._resizeModalInfo.Button = event.button;
document.onmouseup = new Function('event', 'window.' + this._variableName + '._endResize(event); return false;');
document.onmousemove = new Function('event', 'window.' + this._variableName + '._resize(event); return false;');
this._modalIframe.style.display = 'none';
this._isResizing = true;
}
Wo_Modal._endResize = function(event)
{
if (!this._initialized)
this._initialize();
this._isResizing = false;
this._resizeModalInfo = null;
document.onmouseup = null;
document.onmousemove = null;
this._modalIframe.style.display = 'block';
}
Wo_Modal._resize = function(event)
{
if (!this._initialized)
this._initialize();
if (!event)
event = window.event;
if (event.button != this._resizeModalInfo.Button)
{
this._endResize(event);
return;
}
var eventX = typeof(event.pageX) != 'undefined' ? event.pageX : event.screenX;
var eventY = typeof(event.pageY) != 'undefined' ? event.pageY : event.screenY;
var xChange = eventX - this._resizeModalInfo.StartMouseX;
var yChange = eventY - this._resizeModalInfo.StartMouseY;
this.Open(null, this._resizeModalInfo.StartModalWidth + xChange, this._resizeModalInfo.StartModalHeight + yChange, this._lastModalInfo.OnCloseFunction, this._lastModalInfo.X, this._lastModalInfo.Y, true);
}
Wo_Modal.Configure('Utility/loading.htm',['CommonModal'],['CommonModalTitle'],['CommonModalClose'],['CommonModalContent'],['CommonModalFooter'],['CommonModalResize'],['CommonModalMask'],100);
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -