js 弹出对话框(遮罩)透明,可拖动的简单实例

 更新时间:2016年07月11日 10:19:10   投稿:jingxian  
下面小编就为大家带来一篇js 弹出对话框(遮罩)透明,可拖动的简单实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

js 弹出对话框(遮罩)透明,可拖动的简单实例

<html>
<head>
<script>
function sAlert(txt)
{
//var eSrc=(document.all)?window.event.srcElement:arguments[1];
var shield = document.createElement("DIV");
shield.id = "shield";
shield.style.position = "absolute";
shield.style.left = "0px";
shield.style.top = "0px";
shield.style.width = "100%";
//window.alert(document.body.scrollHeight);
shield.style.height = document.body.scrollHeight+"px";
shield.style.background = "white";
shield.style.textAlign = "center";
shield.style.zIndex = "10000";
shield.style.filter = "alpha(opacity=80)";
shield.style.opacity = 0.8;
//shield.style.border-width=thick;

strHtml = "<input type=\"button\" value=\" 确 定 \" id=\"do_OK\" onclick=\"doOk()\" />\n";
shield.innerHTML = strHtml;

document.body.appendChild(shield);
this.doOk = function(){
document.body.removeChild(shield);

}
document.getElementById("do_OK").focus();
}
</script>
</head>
<body >
<input type=button onclick="sAlert('登陆成功!')" value=登陆>

<p align=center><select><option>---</option></select></p>
</body>
</html>
<html>
<head>
<script>

var dragapproved=false
var minrestore=0 //该变量表示窗口目前的状态,0表示初始化状态,1表示最大化状态
var initialwidth,initialheight
//若Client浏览器为IE5.0以上版本的
var ie5=document.all&&document.getElementById
//若Client浏览器为NetsCape6。0版本以上的
var ns6=document.getElementById&&!document.all

function iecompattest(){
return (!window.opera && document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body
}

function drag_drop(e){
if (ie5&&dragapproved&&event.button==1){
document.getElementById("dwindow").style.left=tempx+event.clientX-offsetx+"px"
document.getElementById("dwindow").style.top=tempy+event.clientY-offsety+"px"
}
else if (ns6&&dragapproved){
document.getElementById("dwindow").style.left=tempx+e.clientX-offsetx+"px"
document.getElementById("dwindow").style.top=tempy+e.clientY-offsety+"px"
}
}

function initializedrag(e){
offsetx=ie5? event.clientX : e.clientX
offsety=ie5? event.clientY : e.clientY
document.getElementById("dwindowcontent").style.display="none" //此句代码可不要
tempx=parseInt(document.getElementById("dwindow").style.left)
tempy=parseInt(document.getElementById("dwindow").style.top)

dragapproved=true
document.getElementById("dwindow").onmousemove=drag_drop
}

function loadwindow(width,height){
if (!ie5&&!ns6) //若不为IE或Netscpae浏览器,则使用一般的Window.open进行弹出窗口处理
//window.open(url,"","width=width,height=height,scrollbars=1")
{

}
else{
document.getElementById("dwindow").style.display='';
document.getElementById("dwindow").style.width=initialwidth=width+"px";
document.getElementById("dwindow").style.height=initialheight=height+"px";
document.getElementById("dwindow").style.left="300px";
document.getElementById("dwindow").style.top=ns6? window.pageYOffset*1+30+"px" : iecompattest().scrollTop*1+30+"px";
//document.getElementById("cframe").src=url
}
}

function maximize(){
if (minrestore==0){
minrestore=1 //maximize window
document.getElementById("maxname").setAttribute("src","layout.png")
document.getElementById("dwindow").style.width=ns6? window.innerWidth-20+"px" : iecompattest().clientWidth+"px"
document.getElementById("dwindow").style.height=ns6? window.innerHeight-20+"px" : iecompattest().clientHeight+"px"
}
else{
minrestore=0 //restore window
document.getElementById("maxname").setAttribute("src","layout.png")
document.getElementById("dwindow").style.width=initialwidth
document.getElementById("dwindow").style.height=initialheight
}
document.getElementById("dwindow").style.left=ns6? window.pageXOffset+"px" : iecompattest().scrollLeft+"px"
document.getElementById("dwindow").style.top=ns6? window.pageYOffset+"px" : iecompattest().scrollTop+"px"
}

function closeit(){
document.getElementById("dwindow").style.display="none"

}

function stopdrag(){
dragapproved=false;
document.getElementById("dwindow").onmousemove=null;
document.getElementById("dwindowcontent").style.display="" //extra
}

</script>
</head>

<body>

<div id="dwindow" style="position:absolute;background-color:#EBEBEB;cursor:hand;left:0px;top:0px;display:none" onMousedown="initializedrag(event)" onMouseup="stopdrag()" onSelectStart="return false">
<div align="right" style="background-color:navy">
<img src="layout.png" id="maxname" onClick="maximize()">
<img src="icon_delete.gif" onClick="closeit()"></div>
<div id="dwindowcontent" style="height:100%">

</div>
</div>

<input type="button" value="弹出窗口" onclick='loadwindow(300,200);'>

</body>
</html>

以上这篇js 弹出对话框(遮罩)透明,可拖动的简单实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • javascript forEach通用循环遍历方法

    javascript forEach通用循环遍历方法

    循环遍历一个元素是开发中最常见的需求之一,那么让我们来看一个由框架BASE2和Jquery的结合版本吧.
    2010-10-10
  • js实现可旋转的立方体模型

    js实现可旋转的立方体模型

    这里给大家分享的是通过js脚本来控制页面中的正方体转动特效,用户可以点击按钮向右转动,也可以向下转动,结合自己的需求控制即可。效果非常棒,这里推荐给大家
    2016-10-10
  • JavaScript中Object.prototype.toString方法的原理

    JavaScript中Object.prototype.toString方法的原理

    这篇文章主要介绍了JavaScript中Object.prototype.toString方法的原理的相关资料,需要的朋友可以参考下
    2016-02-02
  • Javascript的console['''']常用输入方法汇总

    Javascript的console['''']常用输入方法汇总

    本文给大家带来了十几种Javascript的console['']常用输入方法,每种方法给大家介绍的都很详细,需要的朋友参考下吧
    2018-04-04
  • js模拟实现京东详情页图片放大效果

    js模拟实现京东详情页图片放大效果

    这篇文章主要为大家详细介绍了js模拟实现京东详情页图片放大效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-11-11
  • 基于Javascript开发连连看游戏小程序

    基于Javascript开发连连看游戏小程序

    这篇文章主要介绍了基于Java开发连连看游戏小程序,连连看是在有限的时间内,只要把所有能连接的相同图案,两个一对地找出来,消除全部就成功了,文中提供了解决思路和部分实现代码,需要的朋友可以参考下
    2023-03-03
  • js实现截图保存图片功能的代码示例

    js实现截图保存图片功能的代码示例

    本篇文章主要介绍了js实现截图功能的代码示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-02-02
  • uni-app中px与rpx的转换方法

    uni-app中px与rpx的转换方法

    这篇文章主要给大家介绍了关于uni-app中px与rpx的转换方法,rpx单位最初由微信推出,它与我们常用px一个很大的区别就是具有响应式,需要的朋友可以参考下
    2023-10-10
  • 详解JavaScript如何优雅地实现创建多维数组

    详解JavaScript如何优雅地实现创建多维数组

    多维数组的意思是指三维或者三维以上的数组。这篇文章将通过示例为大家详细讲解一下JavaScript如何实现优雅地创建多维数组,需要的可以参考一下
    2022-07-07
  • JavaScript中使用webuploader实现上传视频功能(demo)

    JavaScript中使用webuploader实现上传视频功能(demo)

    这篇文章主要介绍了webuploader实现上传视频功能,通过本文给大家介绍了上传视频和上传图片的区别讲解,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2017-04-04

最新评论