js+html5生成自动排列对话框实例


Posted in Javascript onOctober 09, 2017

最近用js和html5写出的弹出多个对话框,并且可以自动排列,占满屏幕时会自动从新开始,话不多说直接上图:
用起来还是十分方便的,如果你感兴趣,代码在后面

js+html5生成自动排列对话框实例

首先是Html页面

<!DOCTYPE html> 
<html lang="en"> 
<head> 
  <meta charset="UTF-8"> 
  <title>Title</title> 
</head> 
<body style="width: 100vw;height: 100vh;padding: 0;margin: 0"> 
<input type="button" value="生成div" onclick="creatDialog()" style="position: absolute;z-index: 200;"/> 
<script src="index.js"></script> 
</body> 
</html>

然后是js

function creatDialog() { 
  // 获取屏幕的宽度和高度 
  var wid=document.body.clientWidth; 
  var hei=document.body.clientHeight; 
 
  //根据已有dialog计算下一个dialog位置 
  var obj=document.getElementsByClassName("dialog"); 
  //5和10为间距 
  var top=5; 
  var left=10; 
 
  if(obj.length!=0){ 
    //不是第一次生成 
    var h=parseInt(hei/(274+5));//求出总行数 
    var w=parseInt(wid/(300+10));//求出总列数 
    var n=parseInt(obj.length/h);//位于第n+1列 
    if(n+1<=w){ 
      var m=obj.length%h//位于第m+1行 
      top=(274+5)*m+5; 
      left=(300+10)*n+10; 
    }else { 
      //屏幕满了移除所有对象,从新开始 
      removeDialog(); 
       top=5; 
       left=10; 
    } 
 
  } 
//生成dialog 
  var dialog=document.createElement('div'); 
  dialog.className="dialog"; 
  dialog.id="dialog"+obj.length; 
  dialog.style.position="absolute"; 
  dialog.style.marginLeft=left+"px"; 
  dialog.style.marginTop=top+"px"; 
  dialog.style.width="300px"; 
  dialog.style.height="274px"; 
  dialog.style.border="solid 1px"; 
  dialog.style.backgroundColor="#FF0000"; 
  document.body.appendChild(dialog); 
} 
 
function removeDialog() { 
  var obj=document.getElementsByClassName("dialog"); 
  var num=obj.length; 
  for(var i=0;i<num;i++){ 
    document.body.removeChild(document.getElementById("dialog"+i)); 
  } 
}

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

Javascript 相关文章推荐
javascript add event remove event
Apr 07 Javascript
初学Javascript的一些总结
Nov 03 Javascript
jQuery在IE下使用未闭合的xml代码创建元素时的Bug介绍
Jan 10 Javascript
JS调用CS里的带参方法实例
Aug 01 Javascript
JavaScript实现对下拉列表值进行排序的方法
Jul 15 Javascript
javascript中的altKey 和 Event属性大全
Nov 06 Javascript
基于JS实现导航条flash导航条
Jun 17 Javascript
CSS3+JavaScript实现翻页幻灯片效果
Jun 28 Javascript
js中int和string数据类型互相转化实例
Jan 16 Javascript
Vue 引入AMap高德地图的实现代码
Apr 29 Javascript
vue+swiper实现左右滑动的测试题功能
Oct 30 Javascript
vue整合百度地图显示指定地点信息
Apr 06 Vue.js
jQuery实现获取table中鼠标click点击位置行号与列号的方法
Oct 09 #jQuery
详解如何让Express支持async/await
Oct 09 #Javascript
jQuery插件artDialog.js使用与关闭方法示例
Oct 09 #jQuery
Node.JS使用Sequelize操作MySQL的示例代码
Oct 09 #Javascript
基于zepto.js实现登录界面
Oct 09 #Javascript
浅谈在koa2中实现页面渲染的全局数据
Oct 09 #Javascript
jQuery实现html双向绑定功能示例
Oct 09 #jQuery
You might like
php之readdir函数用法实例
2014/11/13 PHP
WordPress的主题编写中获取头部模板和底部模板
2015/12/28 PHP
PHP 数组遍历foreach语法结构及实例
2016/06/13 PHP
深入分析PHP设计模式
2020/06/15 PHP
你需要知道的JavsScript可以做什么?
2007/06/29 Javascript
javascript 节点遍历函数
2010/03/28 Javascript
JavaScript原型继承之基础机制分析
2011/08/26 Javascript
jquery 中多条件选择器,相对选择器,层次选择器的区别
2012/07/03 Javascript
jquery.qrcode在线生成二维码使用示例
2013/08/21 Javascript
鼠标事件的screenY,pageY,clientY,layerY,offsetY属性详解
2015/03/12 Javascript
js父页面中使用子页面的方法
2016/01/09 Javascript
Javascript之面向对象--方法
2016/12/02 Javascript
javascript基础知识之html5轮播图实例讲解(44)
2017/02/17 Javascript
JS实现本地存储信息的方法(基于localStorage与userData)
2017/02/18 Javascript
JS高仿抛物线加入购物车特效实现代码
2017/02/20 Javascript
一个有意思的鼠标点击文字特效jquery代码
2017/09/23 jQuery
vue单个组件实现无限层级多选菜单功能
2018/04/10 Javascript
angularjs请求数据的方法示例
2019/08/06 Javascript
vue结合el-upload实现腾讯云视频上传功能
2020/07/01 Javascript
python 字符串split的用法分享
2013/03/23 Python
python线程锁(thread)学习示例
2013/12/04 Python
Python爬取数据并写入MySQL数据库的实例
2018/06/21 Python
如何使用Python进行OCR识别图片中的文字
2019/04/01 Python
Python 读取串口数据,动态绘图的示例
2019/07/02 Python
Python学习笔记之迭代器和生成器用法实例详解
2019/08/08 Python
Django ORM 常用字段与不常用字段汇总
2019/08/09 Python
Python类如何定义私有变量
2020/02/03 Python
python中urllib.request和requests的使用及区别详解
2020/05/05 Python
体育教师个人的自我评价
2014/02/16 职场文书
公路局群众路线教育实践活动第一阶段工作汇报
2014/10/25 职场文书
员工福利申请报告
2015/05/15 职场文书
小学教师见习总结
2015/06/23 职场文书
如何使用Python对NetCDF数据做空间相关分析
2021/04/21 Python
Python 文本滚动播放器的实现代码
2021/04/25 Python
Vue + iView实现Excel上传功能的完整代码
2021/06/22 Vue.js
关于springboot配置druid数据源不生效问题(踩坑记)
2021/09/25 Java/Android