`
szjiang
  • 浏览: 12330 次
  • 来自: ...
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

模拟网页对话框

阅读更多
css 代码

公司有个项目中的一个功能需要频繁的用到打开窗口操作,window.open()和window.showModalDialog()方法均感觉有点不合适。无奈之举,只能自己用层模拟一个了。

首先要定义个用户锁屏的DIV层;样式如下:

css 代码
  1. #screenDiv{   
  2.     width:100%;   
  3.     height:100%;   
  4.     background:#cccccc;   
  5.     position:absolute;   
  6.     left:0;rightright:0;top:0;   
  7.     filter:alpha(opacity=50);   
  8.     display:none;   
  9. }  

 

再定义三个层,分别用于标题,关闭按钮,信息。对应的样式如下:

css 代码
  1. #infoDiv {   
  2.     position:absolute;   
  3.     width:0px;   
  4.     height:0px;   
  5.     z-index:10;   
  6.     border:1px solid #000000;   
  7.     background-color#FFFFFF;   
  8.     visibility: inherit;   
  9.     display:none;   
  10. }   
  11. #closeDiv {   
  12.     position:absolute;   
  13.     width:15px;   
  14.     height:15px;   
  15.     z-index:11;   
  16.     border-right:1px solid #000000;   
  17.     border-top:1px solid #000000;   
  18.     background-color#FFFFFF;   
  19.     visibilityvisible;   
  20.     display:none;   
  21.     overflowhidden;   
  22. }   
  23. #titleDiv {   
  24.     position:absolute;   
  25.     width:0px;   
  26.     height:15px;   
  27.     z-index:11;   
  28.     border-left:1px solid #000000;   
  29.     border-top:1px solid #000000;   
  30.     background-color#FFFFFF;   
  31.     visibilityvisible;   
  32.     display:none;   
  33.     overflowhidden;   
  34.     filter:progid:DXImageTransform.Microsoft.Gradient(gradientType=1,startColorStr=#2c7fac,endColorStr=#ffffff;   
  35. }  

最后再增加相应的拖放事件即可。

js 代码
    1. //拖放层事件   
    2.     var iDiffX=0;   
    3.     var iDiffY=0;      
    4.     function handleMouseDown(e){   
    5.   
    6.         var titleDiv = document.getElementById("titleDiv");   
    7.         iDiffX = e.clientX-titleDiv.offsetLeft;   
    8.         iDiffY = e.clientY-titleDiv.offsetTop;   
    9.            
    10.         document.body.onmousemove=function(){   
    11.             var infoDiv = document.getElementById("infoDiv");   
    12.             var closeDiv = document.getElementById("closeDiv");   
    13.             var titleDiv = document.getElementById("titleDiv");   
    14.                
    15.             infoDiv.style.left = e.clientX-iDiffX;   
    16.             infoDiv.style.top = e.clientY-iDiffY;   
    17.                
    18.             closeDiv.style.left = e.clientX+500-15-iDiffX;   
    19.             closeDiv.style.top = e.clientY-iDiffY;   
    20.                
    21.             titleDiv.style.left = e.clientX-iDiffX;   
    22.             titleDiv.style.top = e.clientY-iDiffY;   
    23.         };   
    24.         document.body.onmouseup=function(){   
    25.             document.body.onmousemove=null;   
    26.             document.body.onmouseup=null;   
    27.         };   
    28.     }  

     大家参考下。提提意见。

    • x.rar (1.5 KB)
    • 下载次数: 33
    分享到:
    评论
    1 楼 keke020 2008-09-08  
    如果打开了对话框,还想操作父窗口里面的字段,
    该如何修改呢?

    而且想捕捉父窗口里面的事件,对子窗口作相应的更改.......

    相关推荐

      asp.net 网页对话框

      标题提到的“asp.net 网页对话框”通常指的是在Web页面中模拟传统桌面应用程序中的对话框效果。 描述中提到了两种常见的变量类型——全局变量`Application`和局部变量`Session`,它们在实现网页对话框中起到关键...

      屏蔽系统对话框 网页对话框 messagebox等

      标题 "屏蔽系统对话框 网页对话框 messagebox等" 涉及的是在计算机编程领域中,如何处理和控制应用程序或网页中的弹出对话框的技术。这些对话框通常包括messagebox,它们是用户界面中用于显示信息、询问用户或接收...

      Div模拟对话框 .

      在网页设计中,"Div模拟对话框"是一种常见的技术,用于在不离开当前页面的情况下向用户展示信息或交互。这种技术通常使用HTML、CSS和JavaScript实现,替代了传统的JavaScript弹窗或者浏览器内置的对话框,提供了更为...

      js模拟对话框,可拖动,QQ对话框风格

      在JavaScript编程中,模拟对话框是一种常见的用户交互方式,它能提供信息提示、确认操作或者获取用户输入。本文将深入探讨如何使用JavaScript实现一个可拖动的、具有QQ对话框风格的模拟对话框,以及涉及的相关知识点...

      仿163信箱js模拟对话框代码

      首先,模拟对话框是网页交互设计中的一个重要元素,它允许用户在不离开当前页面的情况下进行确认、输入或查看信息。传统的JavaScript对话框如alert(), prompt()和confirm()由浏览器内建提供,但样式固定且定制性差。...

      javascript网页对话框.docx

      需要注意的是,由于弹出窗口可能被视为侵入性的用户体验,现代Web设计倾向于使用模态HTML元素(如`<dialog>`)或JavaScript库(如jQuery UI)来模拟对话框效果,以避免浏览器的弹出窗口阻止机制。同时,`...

      jQuery手机移动端网页对话框代码.zip

      在HTML5中,我们可以使用`<dialog>`元素来创建对话框,但为了兼容性,我们通常借助jQuery和自定义CSS来模拟对话框效果。在HTML中,我们需要设置一个隐藏的对话框容器,并在适当的位置触发显示或隐藏的事件。 接着是...

      网页模式对话框效果,兼容IE6,7,8,firefox

      网页模式对话框是一种常见的网页设计元素,用于在用户与页面其他部分隔离的独立窗口中显示信息或进行交互。这种效果可以用于警告、确认操作、显示详细信息或提供一个临时的工作空间。在创建兼容IE6、7、8以及Firefox...

      jQuery模拟JS警告、确认、提示弹出对话框

      jQuery,作为一款广泛使用的JavaScript库,提供了一些方法来模拟更美观、功能丰富的警告、确认和提示弹出对话框,以提升网页交互体验。 一、jQuery模拟警告对话框 传统的JavaScript警告对话框使用`alert()`函数,...

      DIV模拟对话框

      在网页设计中,对话框是用户交互的重要组成部分,通常用于显示警告、确认信息或收集用户输入。传统的对话框如`alert`、`confirm`和`prompt`是JavaScript内置的,但它们样式固定且不可定制。为了提供更丰富的用户体验...

      IE 浏览器弹出的对话框 自动点击确认

      总的来说,自动点击IE浏览器确认对话框的技术结合了编程、网页交互和用户体验设计,旨在提升效率和便捷性。然而,这也需要用户理解其背后的潜在风险,如隐私泄露和误操作。在实际应用中,应谨慎使用,并确保遵循合法...

      自绘对话框基类示例代码

      自绘对话框通常会避免使用标准的控件样式,而是直接绘制出模拟这些控件的图形。 3. `OnEraseBkgnd()`: 这个函数用于处理WM_ERASEBKGND消息,即清除背景。自绘对话框通常会在此处绘制对话框的背景,以实现自定义的...

      使用颜色对话框选择颜色

      4. 色盲模拟:帮助设计师考虑到色盲用户可能遇到的问题。 总结来说,颜色对话框是用户与计算机进行颜色交互的重要工具,其丰富的功能和易用性使得颜色选择变得更加便捷。无论是在专业设计领域还是日常应用中,理解...

      js实现div模拟模态对话框展现URL内容

      本教程将详细讲解如何使用JavaScript和HTML的div元素来模拟一个模态对话框,以展示URL内容。 首先,模态对话框的核心在于创建一个覆盖整个屏幕的背景层以及一个浮于背景之上的对话框。在提供的代码中,`sAlert`函数...

      JavaScript仿百度弹出窗口对话框效果

      在实现弹出窗口对话框时,首先我们需要创建一个隐藏的HTML结构,模拟对话框的样子。这通常包括一个背景遮罩层和一个可自定义内容的对话框容器。对话框可能包含标题、内容区域、按钮等元素。CSS用于设置样式,确保...

      jQuery确认对话框窗口弹窗插件.zip

      这个插件的核心功能在于它能够创建一个模拟系统级确认对话框的窗口,当用户触发特定操作时,弹出窗口提示用户确认他们的决定,从而避免意外的点击导致的不可逆结果。通过使用jQuery,开发者可以轻松地将这个功能集成...

      VC在对话框上加超链接 VC在对话框上加超链接

      在VC++开发环境中,当你需要在对话框(Dialog)上添加超链接功能时,通常是为了提供用户一个可以点击的文本,以便打开网页、执行程序或者触发特定的操作。本篇文章将详细讲解如何在VC++的MFC(Microsoft Foundation ...

    Global site tag (gtag.js) - Google Analytics