网页弹出对话框代码,html弹出窗口对话框

  网页弹出对话框代码,html弹出窗口对话框

  在Web开发中,目前因为Jquery的普及,很多弹出对话框都使用了Jquery技术,而原有的弹出对话框方法使用较少。然而,有许多控件可以用来弹出基于JQuery的对话框窗口。由于工作需要和我的爱好,我对比了近10种对话框控件,发现有一些做得不错,不仅功能强大,而且支持多种皮肤风格。甚至一些对话框的居中也被考虑在内。细节决定体验,有些真的很好。

  1.实现原来的弹出对话框(也可以弹出)

  我们知道,过去在没有应用其他javascript库(比如各种类型的Jquery库)的时候,通常会通过window.open或者window.showModalDialog弹出非模态或者模态的对话框,如下面的脚本所示。

  函数OpenWin( sURL,sFeatures)

  window.open( sURL,null,sFeatures,null)

  //window.open(Sample.htm ,null, height=200,width=400,status=yes,toolbar=no,menubar=no,location=no );

  //window.open( [sURL] [,sName] [,sFeatures] [,bReplace])

  //sName { _ blank;_ media_ parent_ search_ self_top}

  //s features { channel mode;目录;全屏;身高;左;位置;菜单栏;可调整大小;滚动条;地位;标题栏;工具栏;顶;宽度}

  函数ShowWin( sURL,sFeatures)

  if(s features==null s features== ){

  s features= dialog height:300 px;dialog width:850 px;状态:否;卷轴:有;可调整大小:是;求助:没有;“中心:是的,”;

  var return value=window . showmodaldialog(sURL,null,sFeatures)

  //window . showmodaldialog( sample . htm ,null, dialog height:591 px;对话宽度:650像素;)

  //window . showmodaldialog([sURL][,vArguments] [,sFeatures])

  //s features { dialog height;dialogLeftdialogTopdialogWidth居中;dialogHide边缘;求助;可调整大小;滚动;地位;未加修饰的}

  if(returnValue!=未定义)

  返回returnValue

  其他

  返回“”;

  }

  这是最初的方式。利弊大家都知道,就不说了。

  还有一个独创的基于Jquery的弹出窗口方法。由于我一般使用easy-ui作为界面的基础组件,所以原来基于easy-ui的弹窗方法只能弹出内部的HTML层内容,对于弹出独立的页面并没有很好的支持。

  脚本类型=文本/javascript

  函数initDialog(divname) {

  var dlg=jQuery(divname)。对话框({

  没错,

  可调整大小:对,

  关闭:真的,

  显示:“传输”,

  隐藏:“传输”,

  autoOpen: false,

  500,

  身高:250,

  10分钟,

  最小10分钟

  dlg.parent()。appendTo(jQuery( form:first ));

  函数close(divname) {

  $(divname)。对话框(“关闭”);

  /脚本

  2.弹出的弹出对话框

  这个popup控件的弹出对话框好像是把弹出的子页面放在父窗口里,感觉是一体的,所以也可以操作父窗口的对话框,非常方便。

  这个弹出控件相对来说比较好用,但是不好的地方是不兼容Chrome等其他浏览器。其他浏览器的显示图层错位,不好看,风格也比较单一。

  但是因为父窗口的脚本在弹窗中可以很好的操作,而且很好用,所以在我之前的一些项目中用的比较多。

  3.AsyncBox的弹出对话框

  这个控件感觉做的非常好,提供了Chrome、QQBrowser、Ext、ZCMS四个不错的表单皮肤,满足各种需求。通过修改他们的皮肤图片,你也可以定义一个适合你自己项目的风格皮肤。例如,我修改并定义了一个黄色调样式的例子。

  但在使用该控件的过程中,发现与某些脚本或Jquery控件存在冲突,具体原因不明。简而言之,发现基于Jquery的zTree不能正常工作,部分Jquery组件不能正常工作。在我的Web权限管理系统中,本来想以此为弹窗显示一些设置信息,但是发现无法获取ZTree的节点选择值,相当于失败。我很郁闷,也没找到具体原因。还有一个问题,就是不知什么原因,这个控件的作者似乎已经停止了这个控件的开发,甚至连它的官网都被撤下了。

  不过对于弹窗的使用,这个控件已经很不错了,提供了多种调用模块,我一般更喜欢弹出另一个页面。当然也支持页面内部弹出图层或者HTML代码等方式。

  4.artDialog弹出一个对话框

  这个artDialog弹出对话框组件在我看来还是挺不错的。除了支持多种浏览器,还提供了更多的界面效果。目前的版本是V4.1.6,好像还有V5.0的测试版(https://github.com/aui/artDialog)。但在V5.0中,对不支持通过art.dialog.open弹出独立网页的方法进行了调整。要实现独立网页的弹出,需要使用Iframe的代码,效果更差,所以我更喜欢V4.1.6

  该控件支持中心位置的自动计算。我们只需要指定对话框的大小。当然,它支持页面中图层内容的弹出显示。不过我更关心的是独立页面的弹出对话框显示。我的应用在具体的Web权限管理系统中的效果如下图所示(结合ZTree控件,运行正常)。

  这个控件提供了很多参数和方法,对于实现调用来说非常强大。

  script src= http://www . cn blogs . com/jquery tools/art dialog/art dialog . source . js? skin=blue type= text/JavaScript /script

  script src= http://www . cn blogs . com/jquery tools/art dialog/plugins/iframe tools . source . js type= text/JavaScript /script

  首先,封装一个通用的Javascript函数。

  函数ShowArtDlg(标题、url、宽度、高度、锁定)

  if (width==null width==) {

  宽度= 90% ;

  如果(!width.indexOf(px )!width . index of( % ){

  宽度=宽度 px ;

  if(width . index of( px )0 width . index of( % )0){

  宽度=宽度 px ;

  if (height==null height==) {

  高度=90%

  if(height . index of( px )0 height . index of( % )0){

  height=height px

  if (lock==null lock==) {

  lock=false

  art.dialog.open(url,{ height: height,width,title: title,lock: lock },false);//打开子窗体

  }

  页面中调用的代码如下所示。

  tr align=右

  a href= # icon cls= icon-edit id= btna duser onclick= showartdlg( edit-include user , EditTree.aspx?Type=userouid= $ (# txtid )。val(), 360px , 500 px ) runat= server edit/a nbsp。nbsp

  a href= # icon cls= icon-remove id= btndedeleteuser onclick= deleteuser() runat= server remove/a

  /td

  /tr

  如果使用5.0的ArtDialog,通过art.dialog.open调整不支持弹出独立网页的模式,仍然可以通过以下方法弹出独立网页。

  Art.dialog({title:选择* * * ,

  取消:是,

  宽度:600,

  填充:“5px”,

  content: iframe src= test . aspx id= test name= test height= 400 width= 600 frame border= 0 /iframe,

  ok : function(){

  });

  5.还有一些弹出窗口控件,也支持窗口最大化。这个功能还是不错的。

  

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: