

个很好用的Jquery自定义弹窗插件simplemodal (2011-02-23 14:01:28)转载▼
网址： http://blog.sina.com.cn/s/blog_6a1fb8420100psj0.html
窗体API定义丰富，而且使用也很容易上手。
官方地址：http://www.ericmmartin.com/projects/simplemodal/
从官方下载插件，在文件中引用
<script type='text/javascript' src='js/jquery.js'></script>
<script type='text/javascript' src='js/jquery.simplemodal.js'></script>
使用方法具体可以从官方网站下载带例子的压缩包，很容易上手。
$("#element-id").modal();引入内容块

$.modal("<div><h1>SimpleModal</h1></div>"); 直接添加html代码

$("#element-id").modal({options}); 
$.modal("<div><h1>SimpleModal</h1></div>", {options}); 带自定义选项的使用

现在看看它的自定义选项：
appendTo ：将弹出框添加到的父容器，参数为css选择器
opacity ：透明度
overlayId ：遮罩层id
overlayCss ：{Object}定义遮罩层样式
containerId ：弹出窗体容器id
containerCss ：定义容器的样式
dataId ：内容层id
containerCss ：内容层的样式
minHeight ：最小高度
minWidth ：最小宽度
maxHeight ：最大高度maxWidth ：最大宽度
autoResize：是否自适应大小
zIndex ：弹出层的z-index
close ：是否允许关闭
closeHTML ：自定义关闭按钮
closeClass ：关闭层样式
overlayClose ：点击遮罩层是否关闭弹出窗体
position ：数组 [top, left] 自定义弹出窗体位置
onOpen ：弹出窗体打开时候的回调函数
onShow ：弹出窗体显示时候的回调函数
onClose ：弹出窗体关闭时候的回调函数

Options
The following is a list of current options. Default values are indicated with: [Type:Value]
appendTo [String:'body']
The jQuery selector to append the elements to. For ASP.NET, use 'form'.
focus [Boolean:true] (Changed in 1.4)
Focus in the first visible, enabled element?
opacity [Number:50]
The opacity value for the overlay div, from 0 - 100
overlayId [String:'simplemodal-overlay']
The DOM element id for the overlay div
overlayCss [Object:{}]
The CSS styling for the overlay div
containerId [String:'simplemodal-container']
The DOM element id for the container div
containerCss [Object:{}]
The CSS styling for the container div
dataId [String:'simplemodal-data']
The DOM element id for the data div
dataCss [Object:{}]
The CSS styling for the data div
minHeight [Number:null]
The minimum height for the container
minWidth [Number:null]
The minimum width for the container
maxHeight [Number:null]
The maximum height for the container. If not specified, the window height is used.
maxWidth [Number:null]
The maximum width for the container. If not specified, the window width is used.
autoResize [Boolean:false] (Changed in 1.4)
Resize the container if it exceeds the browser window dimensions?
autoPosition [Boolean:true] (Changed in 1.4)
Automatically position the container upon creation and on window resize?
zIndex [Number: 1000]
Starting z-index value
close [Boolean:true]
If true, closeHTML, escClose and overClose will be used if set. If false, none of them will be used.
closeHTML [String:'']
The HTML for the default close link. SimpleModal will automatically add the closeClass to this element.
closeClass [String:'simplemodal-close']
The CSS class used to bind to the close event
escClose [Boolean:true]
Allow Esc keypress to close the dialog?
overlayClose [Boolean:false]
Allow click on overlay to close the dialog?
position [Array:null]
Position of container [top, left]. Can be number of pixels or percentage
persist [Boolean:false]
Persist the data across modal calls? Only used for existing DOM elements. If true, the data will be maintained across modal calls, if false, the data will be reverted to its original state.
modal [Boolean:true] (Added in 1.3.4. Name changed from transient in 1.3.5))
User will be unable to interact with the page below the modal or tab away from the dialog. If false, the overlay, iframe, and certain events will be disabled allowing the user to interact with the page below the dialog.
onOpen [Function:null]
The callback function used in place of SimpleModal's open
onShow [Function:null]
The callback function used after the modal dialog has opened
onClose [Function:null]
The callback function used in place of SimpleModal's close


如何在js中关闭窗口

下面介绍两种关闭的方法：

1) 将 (simplemodal-close) 添加到弹层中关闭元素上，点击这个层就会关闭当前弹窗。

<div id="foo" style="display:none">
  <p>Form HTML</p>
  <span class="simplemodal-close">Close</span>
</div>
2) 在js中关闭使用如下方法，可以用于双层弹窗，在第一个弹层上点击弹出第二层弹窗把第一层弹窗关闭。

$.modal.close();
参考：http://stackoverflow.com/questions/935573/how-do-you-close-a-jquery-simplemodal