下面的弹出框组件使用的是类来封装的。一个弹窗组件通过new一个实例来生成。
下面直接上代码:
html结构:
button{width: 1.6rem;height: 0.5rem;font-size: 0.3rem;line-height: 0.5rem;background: red;color: white;font-weight: bold} .hide{display: none;} .js-pop{ width: 100%; height: 100%; z-index: 100; position: absolute; top:0; left: 0; font-size: 0.24rem; } .js-pop .mask{ position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: #000; opacity: 0.2; } .js-pop .content{ position: fixed; top: 50%; left: 50%; width: 5.80rem; height: 4.81rem; margin: -2.405rem 0 0 -2.9rem; background: url("pop-bg.png") no-repeat; background-size: contain; color: #262626; text-align: center; } .js-pop .content .close{ position: absolute; top: .25rem; right: .08rem; width: .54rem; height: .48rem; z-index: 4; cursor:pointer; } .js-pop .content .prize-title { height: .39rem; min-width: 1.77rem; margin: .28rem auto; line-height: 0.39rem; color: white; text-align: left; text-indent: 1rem; } .js-pop .content .prize-content { color: #a40000; font-size: .24rem; margin:0 0.1rem 0 0.49rem; line-height: 0.4rem; width: 5.2rem; } 温馨提示 登录后才能参与活动哦!
自动登录跳转中......
pop.js代码:
//Pop的构造函数
var Pop=function(wrap,option){
var $this=this;
var opt={
closeCall:null
};
$.extend(opt,option);
var mask=wrap.find(".mask");
//特权方法:1、open();2、close();3、setPrize();4、setContent()控制弹窗内显示的内容
this.open=function(){
wrap.show();
mask.show();
};
this.close=function(callbalck){
wrap.hide();
mask.hide();
opt.closeCall&&callbalck();
};
this.setPrize=function(text){
wrap.find(".js-prize").text(text);
};
this.setContent = function (text) {
wrap.find(".js-content").text(text);
};
function events(){
wrap.on("click",".close",function(e){
e.stopPropagation();
$this.close(opt.closeCall);
});
}
events();
};
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持考高分网。



