javascript模仿msgbox提示效果代码

 更新时间:2008年06月10日 20:07:40   作者:  
js对话框的模拟演示代码
复制代码 代码如下:

//前任作者:http://www.moozi.net
//修改:hh13774978@126.com,rayking
function $(str){
    return document.getElementById(str);
}
function _(str){
    return document.getElementsByTagName(str);
}
function msg(boxtitle,boxtype,boxwidth,msg,url){
    $("msg_div_main").style.width = boxwidth;
    $("msg_div_main").style.left = (_("body")[0].clientWidth - boxwidth) / 2;
    $("msg_div_main").style.top  = (_("body")[0].clientHeight - 220) / 2;
    var msg_div_main_but_tmp = "<br /><br />"
                + "<button class='msg_div_main_but' id='msg_div_main_but' "
                + "onclick=\"msg_close_tmp_biyuan();" + url + "\">确 定</button>";
    switch(boxtype * 1){
        case 1:
            $("msg_div_main_content").innerHTML = msg + msg_div_main_but_tmp;
            //$("msg_div_main_but").focus();
        break;
        case 2:
            $("msg_div_main_content").innerHTML =  msg + msg_div_main_but_tmp
                             + "&nbsp;&nbsp;<button class='msg_div_main_but' "
                             + "onclick='msg_close_tmp_biyuan();'>取 消</button>";
            //$("msg_div_main_but").focus();
        break;
        case 3:
            $("msg_div_main_content").innerHTML =  msg;
        break;
        defualt:
            $("msg_div_main_content").innerHTML =  msg;
        break;
    }
    $("msg_div_main_title").innerHTML =  boxtitle;
    $("msg_div_main").style.zIndex = 200;
    $("msg_div_main").style.display = "";
    if(document.all){    //IE
            if(!$("msg_div_all_Iframe"))
                {
            document.body.appendChild(document.createElement("<iframe id='msg_div_all_Iframe' style='display:none;'></iframe>"));
                }
            $("msg_div_all").style.zIndex  = 100;
            $("msg_div_all").style.display = "";
            $("msg_div_all").oncontextmenu = function()
                {
                        return false;
                }
            $("msg_div_all_Iframe").style.zIndex  = 99;
            $("msg_div_all_Iframe").style.display = "";
            $("msg_div_all_Iframe").oncontextmenu = function()
                {
                        return false;
                }
        }else{
            $("msg_div_all").style.zIndex  = 100;
            $("msg_div_all").style.display = "";
            $("msg_div_all").oncontextmenu = function()
                {
                        return false;
                }
        }
    $("msg_div_main").oncontextmenu = function(){
        return false;
    }
}
function msg_close_tmp_biyuan(){
    $('msg_div_all').style.display='none';
    $('msg_div_main').style.display='none';
    if(document.all){
    $('msg_div_all_Iframe').style.display='none';}
}
//加入对话框移动代码
/* 鼠标拖动 */
var oDrag = "";
var ox,oy,nx,ny,dy,dx;
function drag(e,o){
    var e = e ? e : event;
    var mouseD = document.all ? 1 : 0;
    if(e.button == mouseD)
    {
        if (o.parentNode)
        {
            oDrag = o.parentNode;
        }
        else{oDrag = o;}
        ox = e.clientX;
        oy = e.clientY;        
    }
}
function dragPro(e){
    if(oDrag != "")
    {    
        //var obj=document.getElementById("msg");//拖动的id
        var obj=oDrag;//拖动的id
        var e = e ? e : event;
        obj.style.position = 'absolute';
        dx = parseInt(obj.style.left);
        dy = parseInt(obj.style.top);
        if(isNaN(dx)){dx=0;}
        if(isNaN(dy)){dy=0;}
        nx = e.clientX;
        ny = e.clientY;
        obj.style.left = (dx + ( nx - ox )) + "px";
        obj.style.top = (dy + ( ny - oy )) + "px";
        ox = nx;
        oy = ny;
    }
}
document.onmouseup = function(){oDrag = "";}
document.onmousemove = function(event){dragPro(event);}
document.writeln("<style type='text/css'>"
    + "#msg_div_all,#msg_div_all_Iframe{width:100%;height:100%;position:absolute;filter:Alpha(opacity=70);opacity:0.7;background:#EFEFEF;}"
    + "#msg_div_main {position:absolute;}"
    + "#msg_div_main_title {font-size:12px;color:#2C71AF;font-family:verdana;cursor:default;}"
    + "#msg_div_main_content {font-size:14px;color:#2C71AF;padding-left:8px;}"
    + ".msg_div_main_but {background:url(img/buttonbg.gif);width:65px;heigt:20px;border:none;padding-top:3px;font-size:12px;}"
    + "</style>"
    + "<div id='msg_div_all' style='display:none;'></div>"
    +""
    + "<div id='msg_div_main' style='display:none;'>"
    + "<table width='100%' height='29' border='0' cellspacing='0' cellpadding='0'  onmousedown='drag(event,this)'>"
    + "<tr>"
    + "<td width='25'><img src='img/bg_01.gif' width='25' height='29' alt='' /></td><td background='img/bg_02.gif' width='3'></td>"
    + "<td background='img/bg_02.gif'  msg_forid='msg_div_main' id='msg_div_main_title'></td>"
    + "<td background='img/bg_02.gif' align='right' style='padding-top:4px'>"
    + "<img src='img/bg_05.gif' width='21' height='21' alt='关闭' "
    + "onMouseover=\"this.src='img/bg_13.gif'\" "
    + "onMouseout=\"this.src='img/bg_05.gif'\" onMouseup='msg_close_tmp_biyuan();' "
    + "onMousedown=\"this.src='img/bg_18.gif'\"></td>"
    + "<td width='6'><img src='img/bg_06.gif' width='6' height='29' alt='' /></td>"
    + "</tr>"
    + "</table>"
    + "<table width='100%' border='0' cellspacing='0' cellpadding='0'>"
    + "<tr>"
    + "<td width='3' background='img/bg_07.gif'></td>"
    + "<td bgcolor='#F7F7F7' align='center'><br /><span id='msg_div_main_content'></span><br /><br /></td>"
    + "<td width='3' background='img/bg_08.gif'></td>"
    + "</tr>"
    + "<tr>"
    + "<td width='3' height='3'><img src='img/bg_09.gif' width='3' height='3' alt='' /></td>"
    + "<td background='img/bg_11.gif'></td>"
    + "<td width='3' height='3'><img src='img/bg_10.gif' width='3' height='3' /></td>"
    + "</tr>"
    + "</table>"
    + "</div>");

在线演示
打包下载

相关文章

  • javascript利用键盘控制小方块的移动

    javascript利用键盘控制小方块的移动

    这篇文章主要为大家详细介绍了javascript利用键盘控制小方块的移动,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-04-04
  • 小程序实现简单验证码倒计时

    小程序实现简单验证码倒计时

    这篇文章主要为大家详细介绍了小程序实现简单验证码倒计时,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-07-07
  • fetch跨域问题的使用详解

    fetch跨域问题的使用详解

    这篇文章主要介绍了fetch跨域问题的使用详解,fetch 的核心主要包括:Request , Response , Header , Body,利用了请求的异步特性 --- 它是基于 promise 的,本文通过实例代码给大家介绍的非常详细,需要的朋友可以参考下
    2022-09-09
  • JS实现可以用键盘方向键控制的动画

    JS实现可以用键盘方向键控制的动画

    这篇文章主要为大家详细介绍了JS实现可以用键盘方向键控制的动画,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-12-12
  • javascript数组的使用

    javascript数组的使用

    js Array 对象用于在单个的变量中存储多个值,这里简单的接受下,需要的朋友可以参考下
    2013-03-03
  • 微信小程序实现轮播图效果

    微信小程序实现轮播图效果

    这篇文章主要为大家详细介绍了微信小程序实现轮播图效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-09-09
  • ajax中get和post的说明及使用与区别

    ajax中get和post的说明及使用与区别

    对付乱码我都是用过滤器做字符编码过滤的,Get方法过滤器监听不到,所以我一直喜欢使用Post方法,下面对Ajax Get和Post方法做一对比,需要了解的朋友可以 参考下
    2012-12-12
  • JavaScript中高阶函数的巧妙运用

    JavaScript中高阶函数的巧妙运用

    JavaScript中的高阶函数是指可以接受其他函数作为参数或者返回一个函数作为结果的函数,本文介绍了JS中一些高阶函数的妙用,希望对大家有所帮助
    2023-05-05
  • js中设置元素class的三种方法小结

    js中设置元素class的三种方法小结

    列举所有的方式,看看各浏览器的支持差异。方便用js动态设置元素css的代码。需要的朋友可以参考下。
    2011-08-08
  • javascript的闭包介绍(司徒正美)

    javascript的闭包介绍(司徒正美)

    今天又在无忧看到闭包的使用了,整理一下闭包的东西。
    2011-09-09

最新评论