Zebra_Dialog-简单实用的jQuery模态对话框插件

当前位置:主页 > jQuery库 > Lightbox和对话框 > Zebra_Dialog-简单实用的jQuery模态对话框插件
Zebra_Dialog-简单实用的jQuery模态对话框插件
分享:

    插件介绍

    Zebra_Dialog是一款简单实用的jQuery模态对话框插件。用它可以替代原生JavaScript的警告框和确认框,也可以用它来制作消息提示框。它兼容IE6+浏览器,支持Ajax加载内容和iFrame框架等。

    浏览器兼容性

    浏览器兼容性
    时间:01-24
    阅读:
简要教程

Zebra_Dialog是一款简单实用的jQuery模态对话框插件。用它可以替代原生JavaScript的警告框和确认框,也可以用它来制作消息提示框。它兼容IE6+浏览器,支持Ajax加载内容和iFrame框架等。Zebra_Dialog的特点还有:

  • 对话框外观漂亮,有2种可选的主题效果。
  • 支持5种类型的对话框:confirmation, information, warning, error 和 question。
  • 对话框的内容可以通过AJAX、iFrome或内联元素来调用。
  • 通过样式表可以很容易修改对话框的外观。
  • 可以创建模态和非模态对话框。
  • 可以添加自定义按钮。
  • 消息框的显示位置可以任意定制。
  • 通过回调函数来处理用户的选择。
  • 兼容所有的现代浏览器:Firefox, Opera, Safari, Chrome, Internet Explorer 6+。

安装

可以通过bower来安装Zebra_Dialog插件。

bower install zebra_dialog    
  

使用方法

或者下载压缩包,在页面中引入jquery(需要1.4.1+版本),zebra_dialog.js以及对于主题的CSS样式。

<link rel="stylesheet" href="path/to/themes/default/zebra_dialog.css" type="text/css">
<script type="text/javascript" src="js/jquery.min.js"></script>
<script type="text/javascript" src="path/to/zebra_dialog.js"></script>   
  
初始化插件

在页面DOM元素加载完毕之后,可以通过下面的方法来初始化Zebra_Dialog插件。

$(document).ready(function() {

    // 当点击某个链接时显示对话框
    $(anchor).bind('click', function(e) {
        e.preventDefault();
        $.Zebra_Dialog('The link was clicked!');
    });

});    
  

配置参数

所有的配置参数都是可选的。

  • animation_speed_hide:模态遮罩和对话框在关闭时的动画速度,单位毫秒。默认值为250。
  • animation_speed_show:模态遮罩和对话框在显示时的动画速度,单位毫秒。默认值为0。
  • auto_close:在多少毫秒之后自动关闭对话框,或设置为false不自动关闭对话框。默认值为false。
  • buttons:自定义按钮。如果设置为true,将使用默认的按钮:“question”对话框为[‘Yes’, ‘No’],其它类型对话框为[‘Ok’]

    要自定义按钮,可以使用一个数组,数组中的值为按钮的标题,例如:['按钮1','按钮2']

    如果不需要按钮设置为false。

    当用户点击了对话框中的某个按钮时,对话框关闭,onClose事件会被触发,回调函数会接收到被点击按钮的标题。

    你也可以使用一个对象数组为单独的按钮附加事件:

    [
    {caption: '按钮1', callback: function() { // code }},
    {caption: '按钮2', callback: function() { // code }}
    ]  
    

    它们之间的区别是,使用这种方法附加的事件会在按钮被点击的同时就被执行,而不是在对话框被关闭之后才执行。

    按钮的回调函数接收这个对话框的jQuery对象作为参数。

    在回调函数中返回false将阻止对话框的关闭。

  • center_buttons:设置为true,将所有的按钮在对话框中居中显示。默认值为false。
  • custom_class:对话框容器的外部CSS样式。可以用于在运行是修改对话框的样式。默认为false。
  • keyboard:设置为true可以使用键盘的ESC将来关闭对话框。默认为true。
  • max_height:对话框的最大高度,单位像素,超出这个高度将显示滚动条。默认为0。
  • message:对话框中的信息。
  • modal:是否显示模态遮罩层,默认为true。
  • overlay_close:是否点击遮罩层时关闭对话框?默认为true。
  • overlay_opacity:遮罩层的透明度,默认为0.9。
  • position:对话框的位置。

    可以是center或者带2个元素的数组: ['horizontal_position +/- offset', 'vertical_position +/- offset']horizontal_position可以是“left”, “right” 或 “center”,vertical_position可以是 “top”, “bottom” 或 “middle”,offset是水平或垂直的偏移数量。

    位置是相对于viewport来计算的,例如:

    ['left + 20','top + 20']会将对话框放置在视口左上角,向左和向下偏移20像素。

    默认值为['center','middle']

  • reposition_speed:当浏览器窗口尺寸改变的时候重新定位对话框位置的持续时间。单位毫秒,默认值为100。
  • show_close_button:设置为true时会在对话框的左上角显示一个关闭按钮(“X”),默认为true。
  • source:通过AJAX, iFrames或内联元素添加对话框内容。这个属性可以是下面的其中一种形式:

    1、'ajax':object

    source: {'ajax':'http://myurl.com/'}
    
    source: {'ajax': {
      'url': 'http://myurl.com/',
      'cache': false
    }}  
    

    注意,你不能使用success属性,因为它会被插件覆盖。你可以使用complete属性来替代。

    2、'iframe': object

    source: {'iframe':'http://myurl.com'}
    
    source: {'iframe': {
    'src': 'http://myurl.com/',
    'width': 480,
    'height': 320,
    'scrolling': 'no'
    }}  
    

    注意:必须设置iFrome的宽度和高度,并相应的调整对话框的宽度属性。

    3、'inline':selector

    source: {'inline': $('#myelement')}  
    

    默认为false。

  • title:对话框的标题,默认为""。
  • type:对话框的类型。可以是:confirmation、error、information、question或warning。

    如果你不需要图标,可以设置该参数为false。

    默认情况下,除了“question”类型外,其它类型的对话框都是带“OK”按钮,question”类型对话框带“OK”和“Cancel”两个按钮。

  • vcenter_short_message:短消息是否垂直居中。默认为true。
  • width:对话框的宽度。默认对话框的宽度通过CSS来设置,使用该参数可以在运行使覆盖CSS中的设置。

事件

onClose:对话框关闭之后触发的事件。回调函数接收被点击按钮的标题作为参数,或者false(对话框通过点击关闭按钮或按ESC键来关闭,或点击遮罩层关闭)。

方法

close:关闭对话框。

Zebra_Dialog插件的github地址为:https://github.com/stefangabos/Zebra_Dialog