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 相关文章推荐
JS取文本框中最小值的简单实例
Nov 29 Javascript
js简单的弹出框有关闭按钮
May 05 Javascript
JavaScript跨平台的开源框架NativeScript
Mar 24 Javascript
jquery.form.js框架实现文件上传功能案例解析(springmvc)
May 26 Javascript
jQuery文件上传控件 Uploadify 详解
Jun 20 Javascript
jquery插件autocomplete用法示例
Jul 01 Javascript
jquery pagination插件动态分页实例(Bootstrap分页)
Dec 23 Javascript
Easyui笔记2:实现datagrid多行删除的示例代码
Jan 14 Javascript
Bootstrap模态窗口源码解析
Feb 08 Javascript
原生js的ajax和解决跨域的jsonp(实例讲解)
Oct 16 Javascript
基于Vuejs的搜索匹配功能实现方法
Mar 03 Javascript
详解Vue2.5+迁移至Typescript指南
Aug 01 Javascript
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 radio 单选框获取与保持值的实现代码
2010/05/15 PHP
DEDE实现转跳属性文档在模板上调用出转跳地址
2016/11/04 PHP
解决PHP上传非标准格式的图片pjpeg失败的方法
2017/03/12 PHP
记录Yii2框架开发微信公众号遇到的问题及解决方法
2018/07/20 PHP
js onpropertychange输入框 事件获取属性
2009/03/26 Javascript
使用JavaScript构建JSON格式字符串实现步骤
2013/03/22 Javascript
Javascript表格翻页效果的具体实现
2013/10/05 Javascript
JavaScript实现图片轮播的方法
2015/07/31 Javascript
基于JavaScript实现轮播图代码
2016/07/14 Javascript
jQuery Raty 一款不错的星级评分插件
2016/08/24 Javascript
jQuery获取选中单选按钮radio的值
2016/12/27 Javascript
80%应聘者都不及格的JS面试题
2017/03/21 Javascript
jQuery插件FusionCharts绘制的3D环饼图效果示例【附demo源码】
2017/04/02 jQuery
javaScript封装的各种写法
2017/08/14 Javascript
jQuery实现简单的回到顶部totop功能示例
2017/10/16 jQuery
vue自定义过滤器创建和使用方法详解
2017/11/06 Javascript
node前端模板引擎Jade之标签的基本写法
2018/05/11 Javascript
JS实现关闭小广告特效
2021/01/29 Javascript
pymongo实现多结果进行多列排序的方法
2015/05/16 Python
Python selenium抓取微博内容的示例代码
2018/05/17 Python
python 筛选数据集中列中value长度大于20的数据集方法
2018/06/14 Python
Python编程实现tail-n查看日志文件的方法
2019/07/08 Python
PyTorch的Optimizer训练工具的实现
2019/08/18 Python
opencv3/python 鼠标响应操作详解
2019/12/11 Python
解决Python中报错TypeError: must be str, not bytes问题
2020/04/07 Python
Python中的整除和取模实例
2020/06/03 Python
python 利用toapi库自动生成api
2020/10/19 Python
python os.rename实例用法详解
2020/12/06 Python
阿联酋电子产品购物网站:Menakart
2017/09/15 全球购物
short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?
2014/09/26 面试题
酒店前厅员工辞职信
2014/01/08 职场文书
《雨霖铃》听课反思
2014/02/13 职场文书
民政局副局长民主生活会个人对照检查材料
2014/09/19 职场文书
生产车间主任岗位职责
2015/04/08 职场文书
通知格式
2015/04/27 职场文书
pytorch 实现在测试的时候启用dropout
2021/05/27 Python