overlay的web交互效果很不错,个人很喜欢^_^
Minimal setup for overlay
首先需要jquery.min.js 和jquery.tools.min.js
效果如下:
注:点击图片可以看到原图和说明,还可以进行关闭
test.html代码
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" cnotallow="text/html; charset=utf-8" />
<title>overlay</title>
<style>
/* the overlayed element */
.simple_overlay {
/* must be initially hidden */
display:none;
/* place overlay on top of other elements */
z-index:10000;
/* styling */
background-color:#333;
width:675px;
min-height:200px;
border:1px solid #666;
/* CSS3 styling for latest browsers */
-moz-box-shadow:0 0 90px 5px #000;
-webkit-box-shadow: 0 0 90px #000;
}
/* close button positioned on upper right corner */
.simple_overlay .close {
background-image:url(images/close.png);
position:absolute;
right:-15px;
top:-15px;
cursor:pointer;
height:35px;
width:35px;
}
/* styling for elements inside overlay */
.details {
position:absolute;
top:15px;
right:15px;
font-size:11px;
color:#fff;
width:150px;
}
.details h3 {
color:#aba;
font-size:15px;
margin:0 0 -10px 0;
}
</style>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js" type="text/javascript"></script>
<script src="http://cdn.jquerytools.org/1.1.2/tiny/jquery.tools.min.js" type="text/javascript"></script>
<!--将jQuery引用进来-->
<script type="text/javascript">
$(function (){
//实现该功能
$("img[rel]").overlay();
});
</script>
</head>
<body>
<img src="images/0.jpg" height="200" rel="#mies1"/>
<img src="images/1.jpg" height="200" rel="#mies1"/>
<!-- first overlay. id attribute matches our selector -->
<div class="simple_overlay" id="mies1">
<!-- large image -->
<img src="images/0.jpg"/>
<!-- image details -->
<div class="details">
<h3>The Barcelona Pavilion</h3>
<h4>Barcelona, Spain</h4>
<p>The content ...</p>
</div>
</div>
<!-- second overlay -->
<div class="simple_overlay" id="mies2">
<!-- large image -->
<img src="images/1.jpg"/>
<!-- image details -->
<div class="details">
<h3>The Barcelona Pavilion</h3>
<h4>Barcelona, Spain</h4>
<p>The content ...</p>
</div>
</div>
</body>
</html>
0.jpg如下:
1.jpg如下:
以上配置参数说明描述如下:
属性 默认值 说明
start (Object) {top: 'center',left: 'center', width: 0,absolute: false} 用于设置overlay弹出框开始的位置以及大小。默认的情况下,overlay弹出框开始的位置是其触发器(即触发其显示的页面元素)的位置,并且overlay弹出框初始的大小为0;如果overlay不是通过页面元素触发的话,那么他开始的位置为屏幕的中间位置。可以通过以下几个参数设置来覆盖该属性的默认值:
top:用于设置overlay弹出框开始位置据屏幕上边缘的距离。
left:用于设置overlay弹出框开始位置据屏幕左边缘的距离。
width:用于设置overlay弹出框在开始位置处的宽度(即弹出框最初始宽度);而overlay在开始处高度则会根据宽度自动计算出来。
absolute:如果该值设置为true的话,那么overlay弹出框开始处的位置这回根据浏览器窗口左上角处来计算并不考虑滚动位置。如果该值设置为,那么overlay弹出框开始处的位置将会将滚动位置计算在内。
finish (Object) {top: 100,left: 'center',absolute: false} 用于设置overlay弹出框最终所处的位置及大小。、可以通过以下几个参数设置来覆盖该属性的默认值:
top:用于设置overlay弹出框最终位置据屏幕上边缘的距离。
left:用于设置overlay弹出框最终位置据屏幕左边缘的距离。
absolute:如果该值设置为true的话,那么overlay弹出框最终处的位置会根据距浏览器窗口左上角位置来计算并不考虑滚动位置。如果该值设置为,那么overlay弹出框最终处的位置将会将滚动位置计算在内。
此外,overlay弹出框最终位置的大小由相关css属性来设置的。
expose overlay弹出框经常与expose功能共同使用。而二者共同使用的方式正是通过overlay的该配置属性来设置的。该配置项接受expose功能的配置对象。该属性接受的参数分两种:一种为只接受expose背景色设置的字符串;另一种方式为expose配置对象。该属性的两种参数方式可参见本文示例。
speed 'normal' 设置overlay弹出框弹出的速度。该属性接受的有效值为:slow,normal,fast,以及毫秒数值。如果该属性值被置为0,那么overlay弹出框将会以无动画效果的方式立即显示。
fadeInSpeed 'fast' 设置overlay弹出框中内容显示的速度,该属性接受的有效值通speed属性。
oneInstance TRUE 默认情况下,一个页面只会显示一个overlay弹出框。但是,可通过将该属性设置为false来允许该页面显示多个overlay弹出框。(注:该属性在closeOnClick 设置为false的情况下才能有比较明显的效果。)
closeOnClick TRUE 默认情况下,点击页面中overlay弹出框外的其他区域,可以关闭该overlay弹出框。但是,将该属性设置为false可以屏蔽该功能。
preload TRUE 默认情况下,背景图片会被预先加载到浏览器的缓存中。所以,当overlay提示框被打开时,overlay提示框的背景图片已被加载到缓存,所以当触发overlay提示框时,整个提示框弹出过程会很平滑。另外,可通过将属性设置为false来阻止背景图片的预加载。
close 关闭按钮设置。如果用户没有在该处提供overlay提示框关闭按钮,那么,overlay提示框会自动产生关闭按钮。关于用户自己定制关闭overlay提示按钮的方法,请参考本文相关示例。
zIndex 9999 设置overlay提示框的z-index属性(css),至于z-index属性作用,请参见相关资料。该属性已被设置为一个很高的值-999,所以一般情况下,该属性不需要再行设置。但是需要注意的是,该值应该大于通页面其他元素的z-index值。
target 如果rel属性没指定overlay提示框的话,那么可通过该属性设置overlay提示框元素。
onBeforeLoad None 回调函数,该属性会在overlay提示框触发前执行,如果该函数返回false的话,那么overlay提示框将会被阻止而不显示。
onLoad None 回调函数,该属性会在overlay提示框触发完成后执行。
onBeforeClose None 回调函数。该属性会在overlay提示框关闭事件触发后,overlay提示框关闭前执行。返回false则阻止overlay提示框关闭。
onClose None 回调函数。该属性会在overlay提示框关闭后触发。
api FALSE 该属性设置同selector,tab功能的api属性。该属性意义参考本系列selector,tab相关说明。