js文件
function PushDom(aInstance) {
let first = document.body.firstChild; //得到页面的第一个元素。
let bodyChild = document.body.children;
let num = 0;//弹窗数量
for (let i in bodyChild) {
if (typeof (bodyChild[i]) == 'object' && bodyChild[i].getAttribute('belong') == 'LoadControl') {
num++;
}
}
let zIndex = 110 + num * 10;//根据弹窗数量增加层级
if (aInstance.$el.id != first.id) {//禁止重复弹窗出现
aInstance.$el.setAttribute('belong', 'LoadControl')
aInstance.$el.style.zIndex = zIndex;
document.body.insertBefore(aInstance.$el, first); //在得到的第一个元素之前插入
return aInstance.selectContent;
}
}
function LoadControl(control, data) {
let PopupBox = Vue.extend(control)
let _instance = new PopupBox({
data
}).$mount();
PushDom(_instance);
}
使用方式
LoadControl(名字, {
数据1:“1”,
});