html代码自动排列,js+html5生成自动排列对话框实例

最近用js和html5写出的弹出多个对话框,并且可以自动排列,占满屏幕时会自动从新开始,话不多说直接上图:

用起来还是十分方便的,如果你感兴趣,代码在后面

f1f7db1ef6123ffabf4ab0c295fefdba.gif

首先是Html页面

Title

然后是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

document.body.removeChild(document.getElementById("dialog"+i));

}

}

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值