JS如何实现在弹出窗口中加载页面


Posted in Javascript onDecember 03, 2020

弹出窗口,加载页面。弹出窗口初始位置为居中。可在关闭窗口时,回调主页面按钮。要求jquery。

效果演示

首先,演示主窗口两个按钮作用。然后,演示关闭弹出窗口时,调用主窗口的两个按钮。JS如何实现在弹出窗口中加载页面

主要代码(时间仓促,没加注释,不过代码很简单,就是创建几个元素拼在一起,每个元素都用var=标明了)

var _divMask;
var _divBox;

function ShowMask() {
  var divMask = $('<div></div>')
    .attr("id", "divMask")
    .css({
      "position": "absolute",
      "left": "0",
      "top": "0",
      "width": "100%",
      "height": "100%",
      "backgroundColor": "gray",
      "opacity": "0.4"
    }).appendTo("body");
  _divMask = divMask;
  return divMask;
}

function ShowBox(title, url, width, height) {
  ShowMask();
  var divBox = $("<div></div>")
    .attr("id", "divBox")
    .css({
      "position": "absolute",
      "top": (($(document).height() - height) / 2) < 0 ? 0 : (($(document).height() - height) / 2),
      "left": (($(document).width() - width) / 2),
      "width": width,
      "height": height,
      "border": "2px solid gray",
      "backgroundColor": "white"
    })
    .appendTo("body");
  var pTitle = $("<p></p>")
    .css({
      "width": (width - 20) / 2,
      "float": "left",
      "padding": "5px",
      "margin": "0"
    })
    .text(title)
    .appendTo(divBox);
  var pClose = $("<p></p>")
    .css({
      "width": (width - 20) / 2,
      "float": "left",
      "text-align": "right",
      "padding": "5px",
      "margin": "0"
    })
    .appendTo(divBox);
  var aClose = $("<a></a>")
    .css({
      "color": "black",
      "text-decoration": "none"
    })
    .attr("href", "javascript:CloseBox();")
    .text("关 闭")
    .appendTo(pClose);
  var hr = $("<hr/>")
    .css({
      "margin": "0",
      "border": "1px solid gray"
    })
    .appendTo(divBox);
  var iframeContainer = $("<iframe></iframe>")
    .attr("id", "divContainer")
    .css({
      "width": width,
      "height": height - 13 - pTitle.height(),
      "float": "left",
      "overflow": "auto",
      "border": "0"
    })
    .attr("src", url)
  .appendTo(divBox);
  _divBox = divBox;
  //divBox.draggable({ handle: "p" });
}

function CloseBox(btn) {
  if (_divMask == null) {
    if (btn != null && btn != '') {
      parent.document.getElementById(btn).click();
    }
    $(parent.document.getElementById("divMask")).remove();
    $(parent.document.getElementById("divBox")).remove();
  }
  else {
    _divMask.remove();
    _divBox.remove();
  }
}

下载

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
html下载本地
Jun 19 Javascript
JavaScript动态调整TextArea高度的代码
Dec 28 Javascript
浅谈javascript的原型继承
Jul 25 Javascript
Windows 系统下安装和部署Egret的开发环境
Jul 31 Javascript
javascript显式类型转换实例分析
Apr 25 Javascript
值得分享的Bootstrap Table使用教程
Nov 23 Javascript
JS生成和下载二维码的代码
Dec 07 Javascript
JS查找数组中重复元素的方法详解
Jun 14 Javascript
纯JS实现只能输入数字的简单代码
Jun 21 Javascript
Iview Table组件中各种组件扩展的使用
Oct 20 Javascript
详解angular2 控制视图的封装模式
Dec 27 Javascript
浅谈小程序 setData学问多
Feb 20 Javascript
对vue生命周期的深入理解
Dec 03 #Vue.js
在实例中重学JavaScript事件循环
Dec 03 #Javascript
js 数据类型判断的方法
Dec 03 #Javascript
用vue设计一个日历表
Dec 03 #Vue.js
JS闭包原理及其使用场景解析
Dec 03 #Javascript
实用的 vue tags 创建缓存导航的过程实现
Dec 03 #Vue.js
Javascript节流函数throttle和防抖函数debounce
Dec 03 #Javascript
You might like
实用函数2
2007/11/08 PHP
php date()日期时间函数详解
2010/05/16 PHP
PHP5中使用PDO连接数据库的方法
2010/08/01 PHP
str_replace只替换一次字符串的方法
2013/04/09 PHP
Yii实现MySQL多数据库和读写分离实例分析
2014/12/03 PHP
Joomla框架实现字符串截取的方法示例
2017/07/18 PHP
精解window.setTimeout()&amp;window.setInterval()使用方式与参数传递问题!
2007/11/23 Javascript
JavaScript 学习笔记(十五)
2010/01/28 Javascript
HTML Color Picker(js拾色器效果)
2013/08/27 Javascript
js 事件截取enter按键页面提交事件示例代码
2014/03/04 Javascript
JavaScript学习笔记之JS对象
2015/01/22 Javascript
jquery插件tytabs.jquery.min.js实现渐变TAB选项卡效果
2015/08/25 Javascript
jquery简单实现带渐显效果的选项卡菜单代码
2015/09/01 Javascript
jquery淡入淡出效果简单实例
2016/01/14 Javascript
深入解析Backbone.js框架的依赖库Underscore.js的作用
2016/05/07 Javascript
微信小程序 网络API 上传、下载详解
2016/11/09 Javascript
如何进行微信公众号开发的本地调试的方法
2019/06/16 Javascript
javascript创建元素和删除元素实例小结
2019/06/19 Javascript
Vue 3.0 全家桶抢先体验
2020/04/28 Javascript
详解vue父子组件状态同步的最佳方式
2020/09/10 Javascript
[06:16]DOTA2守卫传承者——职业选手谈心路历程
2015/02/26 DOTA
python使用socket进行简单网络连接的方法
2015/04/29 Python
python通过apply使用元祖和列表调用函数实例
2015/05/26 Python
Python argv用法详解
2016/01/08 Python
Python引用类型和值类型的区别与使用解析
2017/10/17 Python
python中利用zfill方法自动给数字前面补0
2018/04/10 Python
django query模块
2019/04/20 Python
Django学习笔记之为Model添加Action
2019/04/30 Python
python 含子图的gif生成时内存溢出的方法
2019/07/07 Python
如何把外网python虚拟环境迁移到内网
2020/05/18 Python
俄罗斯最大的消费电子连锁零售商:Mvideo
2017/06/25 全球购物
Clarisonic美国官网:科莱丽声波洁面仪
2017/10/12 全球购物
购房公证委托书(2014版)
2014/09/12 职场文书
基层领导干部“四风”问题批评与自我批评
2014/09/23 职场文书
食堂管理制度范本
2015/08/04 职场文书
装修安全责任协议书
2016/03/22 职场文书