国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

node.js|vue.js|jquery|angularjs|React|json|js教程|

服務(wù)器之家 - 編程語(yǔ)言 - JavaScript - ModelDialog JavaScript模態(tài)對(duì)話框類代碼

ModelDialog JavaScript模態(tài)對(duì)話框類代碼

2021-01-28 17:41JavaScript教程網(wǎng) JavaScript

ModelDialog JavaScript模態(tài)對(duì)話框類代碼,需要的朋友可以參考下。

/**
* JavaScript ModelDialog v0.1
*
* new ModelDialog({
* caption 標(biāo)題 '對(duì)話框標(biāo)題'(默認(rèn))
* template 主體內(nèi)容 ''(默認(rèn))
* dialogCls 對(duì)話框className 'md-dialog'(默認(rèn))
* headCls 頭部className 'md-head'(默認(rèn))
* btnCloseCls 關(guān)閉按鈕className 'md-close'(默認(rèn))
* bodyCls 主體className 'md-body'(默認(rèn))
* shadowBg 遮蓋層背景色 'gray'(默認(rèn))
* shadowOpy 遮蓋層透明的 0.2(默認(rèn))
* dragable 是否可拖拽 true(默認(rèn))
* dragInWin 是否僅在窗口內(nèi)拖動(dòng) (true)默認(rèn) 與area互斥
* area [minX,maxX,minY,maxY] 與dragInWin互斥
* });
*/

ModelDialog JavaScript模態(tài)對(duì)話框類代碼


核心代碼:

復(fù)制代碼 代碼如下:


/**
* JavaScript ModelDialog v0.4
* Copyright (c) 2010 snandy
* Blog: http://snandy.javaeye.com/
* QQ群: 34580561
* Date: 2010-09-08
*
*
* new ModelDialog({
* caption 標(biāo)題 '對(duì)話框標(biāo)題'(默認(rèn))
* template 主體內(nèi)容 ''(默認(rèn))
* dialogCls 對(duì)話框className 'md-dialog'(默認(rèn))
* headCls 頭部className 'md-head'(默認(rèn))
* btnCloseCls 關(guān)閉按鈕className 'md-close'(默認(rèn))
* bodyCls 主體className 'md-body'(默認(rèn))
* shadowBg 遮蓋層背景色 'gray'(默認(rèn))
* shadowOpy 遮蓋層透明的 0.2(默認(rèn))
* dragable 是否可拖拽 true(默認(rèn))
* dragInWin 是否僅在窗口內(nèi)拖動(dòng) (true)默認(rèn) 與area互斥
* area [minX,maxX,minY,maxY] 與dragInWin互斥
* });
*/
ModelDialog =
function(){
var px = 'px';
var isIE = /msie/.test(navigator.userAgent.toLowerCase());

function getViewSize(){
return {w: window['innerWidth'] || document.documentElement.clientWidth,
h: window['innerHeight'] || document.documentElement.clientHeight}
}
function getFullSize(){
var w = Math.max(document.documentElement.clientWidth ,document.body.clientWidth) + Math.max(document.documentElement.scrollLeft, document.body.scrollLeft);
var h = Math.max(document.documentElement.clientHeight,document.body.clientHeight) + Math.max(document.documentElement.scrollTop, document.body.scrollTop);
w = Math.max(document.documentElement.scrollWidth,w);
h = Math.max(document.documentElement.scrollHeight,h);
return {w:w,h:h};
}
function $(tag){
return new $.prototype.init(tag);
}
$.prototype = {
init : function(tag){
this[0] = document.createElement(tag);
return this;
},
setCls : function(cls){
this[0].className = cls;
return this;
},
setSty : function(name,val){
name=='opacity' ?
isIE ?
this[0].style.filter = 'Alpha(Opacity=' + val*100 + ')' :
this[0].style.opacity = val :
this[0].style[name] = val;
return this;
},
css : function(str){
this[0].style.cssText = str;
return this;
},
html : function(str){
this[0].innerHTML = str;
return this;
}
}
$.prototype.init.prototype = $.prototype;

function ModelDialog(opt){
this.dialogCls = opt.dialogCls || 'md-dialog';
this.headCls = opt.headCls || 'md-head';
this.btnCloseCls = opt.btnCloseCls || 'md-close';
this.bodyCls = opt.bodyCls || 'md-body';
this.shadowBg = opt.shadowBg || 'gray';
this.shadowOpy = opt.shadowOpy || '0.2';
this.caption = opt.caption || "對(duì)話框標(biāo)題";
this.template = opt.template || '';
this.dragable = opt.dragable != false;
this.dragInWin = opt.dragInWin != false;
this.area = opt.area;
this.dialog = null;
this.head = null;
this.label = null;
this.btnClose = null;
this.body = null;
this.shadow = null;
this.init();
}
ModelDialog.prototype = {
init : function(){
var _this = this;
this.dialog = $('div').setCls(this.dialogCls).css('position:absolute;z-index:100;')[0];
this.head = $('div').setCls(this.headCls)[0];
this.label = $('label').html(this.caption)[0];
this.btnClose = $('div').setCls(this.btnCloseCls)[0];
this.on(this.btnClose,'click',function(){
_this.onClose();
});
this.head.appendChild(this.label);
this.head.appendChild(this.btnClose);
this.body = $('div').setCls(this.bodyCls)[0];
this.setContent(this.template);
this.dialog.appendChild(this.head);
this.dialog.appendChild(this.body);
this.createShadow();
document.body.appendChild(this.shadow);
document.body.appendChild(this.dialog);
this.moveToCenter();
// 計(jì)算拖拽范圍
// 標(biāo)準(zhǔn)模式下:clientWidth=width+padding;offsetWidth=width+padding+border
if(this.dragable){
if(this.dragInWin){
var maxX = getViewSize().w - this.dialog.offsetWidth;
var maxY = getViewSize().h - this.dialog.offsetHeight;
this.dragdrop(this.dialog,{
bridge : this.head,
area : [0,maxX,0,maxY]
});
return;
}
if(this.area){
this.dragdrop(this.dialog,{
bridge : this.head,
area : this.area
});
return;
}
this.dragdrop(this.dialog,{
bridge : this.head
});

}

},
destroy : function(){
this.dialog = null;
this.head = null;
this.label = null;
this.btnClose = null;
this.body = null;
this.shadow = null;
},
createShadow : function(){
var str = 'position:absolute;left:0px;top:0px;z-index:1' +
';width:' + getFullSize().w + px +
';height:' + getFullSize().h + px +
';background:' + this.shadowBg +
';opacity:' + this.shadowOpy +
';filter:Alpha(Opacity=' + this.shadowOpy*100 + ');';
var _this = this;
this.shadow = $("div").setCls('md-shadow').css(str)[0];
this.on(window,'resize',function(){
_this.shadow.style.width = getFullSize().w + px;
_this.shadow.style.height = getFullSize().h + px;
_this.moveToCenter();
});
},
moveTo : function(x, y){
this.dialog.style.left = x + px;
this.dialog.style.top = y + px;
},
moveToCenter : function(){
var size = getViewSize();
var x = (size.w-50)/2 - (this.dialog.clientWidth-50)/2;
var y = (size.h- 50)/2 - (this.dialog.clientHeight-50)/2 + document.documentElement.scrollTop;
this.moveTo(x, y);
},
setCaption : function(v){
this.caption = v;
this.label.innerHTML = v;
},
setContent : function(str){
this.template = str;
this.body.innerHTML = str;
},
onClose : function(){
document.body.removeChild(this.dialog);
document.body.removeChild(this.shadow);
if(this['onbi']){
this.onbi();
}
this.destroy();
},
on : function(el, type, fn){
el.addEventListener ?
el.addEventListener(type, fn, false) :
el.attachEvent ?
el.attachEvent("on" + type, fn) :
el['on'+type] = fn;
},
un : function(el,type,fn){
el.removeEventListener ?
el.removeEventListener(type, fn, false) :
el.detachEvent ?
el.detachEvent("on" + type, fn) :
el['on'+type] = null;
},
dragdrop : function(){
return function(el,opt){
var _this=this, ele, diffX, diffY, dragX=true,dragY=true, minX, maxX, minY, maxY, bridge;
ele = el;
opt && opt.dragX===false && (dragX=false);
opt && opt.dragY===false && (dragY=false);
opt && opt.area && typeof opt.area[0]==='number' && (minX=opt.area[0]);
opt && opt.area && typeof opt.area[1]==='number' && (maxX=opt.area[1]);
opt && opt.area && typeof opt.area[2]==='number' && (minY=opt.area[2]);
opt && opt.area && typeof opt.area[3]==='number' && (maxY=opt.area[3]);
opt && opt.bridge && (bridge=opt.bridge);
ele.style.position = 'absolute';
bridge ?
this.on(bridge,'mousedown',mousedown) :
this.on(ele,'mousedown',mousedown);
function mousedown(e){
e = e || window.event;
ele.style.cursor = 'pointer';
if(ele.setCapture){//IE
_this.on(ele, "losecapture", mouseup);
ele.setCapture();
e.cancelBubble = true; //IE
}else if(window.captureEvents){//標(biāo)準(zhǔn)DOM
e.stopPropagation();
_this.on(window, "blur", mouseup);
e.preventDefault();
}
_x = e.clientX;
_y = e.clientY;
diffX = e.clientX - ele.offsetLeft;
diffY = e.clientY - ele.offsetTop;
_this.on(document,'mousemove',mousemove);
_this.on(document,'mouseup',mouseup);
}
function mousemove(e){
e = e || window.event;
var moveX = e.clientX - diffX,
moveY = e.clientY - diffY;
moveX < minX && (moveX = minX); // left 最小值
moveX > maxX && (moveX = maxX); // left 最大值
moveY < minY && (moveY = minY); // top 最小值
moveY > maxY && (moveY = maxY); // top 最大值

dragX && (ele.style.left = moveX + 'px');
dragY && (ele.style.top = moveY + 'px');
}
function mouseup(e){
ele.style.cursor = 'default';
_this.un(document,'mousemove',mousemove);
_this.un(document,'mouseup',mouseup);
if(ele.releaseCapture){//IE
_this.un(ele, "losecapture", mouseup);
ele.releaseCapture();
}
if(window.releaseEvents){//標(biāo)準(zhǔn)DOM
_this.un(window, "blur", mouseup);
}
}
}
}()

}
return ModelDialog;
}();

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 色天天综合久久久久综合片 | 国内精品一区二区三区视频 | 成人二区| 成人免费网站在线观看 | 日韩在线播放一区二区三区 | 在线免费黄色 | 亚洲视频在线观看中文字幕 | 久久成人国产精品 | 寡妇激情毛片免费视频 | 日韩在线视频中文字幕 | 欧美亚洲一 | 国产乱码精品一区二区三区中文 | 中文字幕日韩有码 | 国产精品不卡视频 | 欧美视频在线看 | 日韩一区二区三区四区 | 国产激情在线观看 | 四虎综合网 | 中文字幕av一区 | 欧美精品成人一区二区三区四区 | 美女黄网| 国产日韩欧美视频 | 久久青草国产 | 久久久av亚洲男天堂 | 欧美日日 | 日本免费精品视频 | 久久精品在线 | 欧美亚洲一区 | 欧美视频免费看 | 欧美成人精品一区二区三区 | 黄色av免费网站 | 欧美一区不卡 | 一级网站在线观看 | 毛片一级片 | 黄色片视频免费 | 精品国产乱码久久久久久1区2区 | 美女久久久 | 在线亚洲电影 | 日本三级电影网站 | 亚洲成人一区二区三区四区 | 一级片黄片毛片 |