当前位置: 首页 > 图文教程 > 网络编程 > Javascript > jquery tools系列 overlay 学习

Javascript
推荐:极酷右键菜单
跟随鼠标旋转的文字
拖动层效果,兼容IE和FF!
由 element.appendChild(newNode) ,谈开去
发个自己写的表格操作类(添加,删除,排序,上移,下移)
小议Function.apply() 之一------(函数的劫持与对象的复制)
小议Function.apply()之二------利用Apply的参数数组化来提高 JavaScript程序性能
JavaScript中令你抓狂的魔术变量
[原创]网络复制内容时常用的正则+editplus
createElement和onclick
很有趣的一段textarea
用 JavaScript 给站外链接的 cursor 进行改造
一段好玩的JavaScript代码
IE中实现全屏广告代码,霸道无比.
phpwind放自动注册方法
线路分流自动跳转代码;希望对大家有用!
鼠标放在放在输入框上面提示效果
常用js脚本
硬盘浏览程序,保存成网页格式便可使用
Js的MessageBox

Javascript 中的 jquery tools系列 overlay 学习


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-12   浏览: 914 ::
收藏到网摘: n/a

接着上次scrollable的学习,今天继续jquery tools六大功能的第四个功能——overlay的学习。 如scrollable的学习,首先给出操作的html目标代码:
复制代码 代码如下:
此外,tooltip还提供了一系列获取overlay对象的方法,具体使用方式如下:
复制代码 代码如下:

var overlayObj=$("#overlay").overlay({api:true});
overlayObj.load();//自动显示overlay,(无需触发,会在页面加载完成时自动触发)
setTimeout(function(){overlayObj.close();},2000);//2秒后,自动加载(出现)的提示框隐藏
$("#overlayInfo").append("<P>overlay is opened:"+overlayObj.isOpened()+"</p>");//判断此时是否有overlay提示框是否显示
$("#overlayInfo").append("<p>overlay background image:"+overlayObj.getBackgroundImage()+"</p>");
$("#overlayInfo").append("<p>overlay trigger:"+overlayObj.getTrigger()+"</p>");
$("#overlayInfo").append("<p>overlay config-speed:"+overlayObj.getConf().speed+"</p>");
$("#overlayInfo").append("<p>overlay content:"+overlayObj.getContent().html()+"</p>");
overlayObj.onBeforeLoad=function(){
alert(this.getContent().attr("id"));
}

以下是overlay对象的方法说明描述:
方法
默认值 描述
load() Overlay 打开overlay提示框的另一个方法,通过该方法可以不通过页面事件触发而直接通过js脚本打开overlay提示框。
close() Overlay (通过js脚本对该方法的调用)关闭弹出的overlay提示框。
isOpened() boolean 判断当前是否有overlay提示框被打开。如果当前有overlay提示框已被打开,返回true
getBackgroundImage() jQuery 将当前overlay提示框的背景图片作为一个jquery对象返回。
getContent() jQuery overlay弹出框的内容以jquery对象的方式返回。
getTrigger() jQuery 将触发overlay弹出框的元素以jquery对象的方式返回。
getConf() Object 获取overlay弹出框初始化时的配置对象。
api FALSE 同配置对象中api
   
onBeforeLoad(fn) API 同配置文件中onBeforeLoad属性。
onLoad(fn) API 同配置文件中onLoad属性。
onBeforeClose(fn) API 同配置文件中onBeforeClose属性。
onClose(fn) API 同配置文件中onClose属性。
最后,给出完整示例代码:
复制代码 代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script src="http://flowplayer.org/tools/js/tools/1.0.2/jquery.tools.min.js" ></script>
<style><!--
body {
padding:150px 50px;
font-family:"Lucida Grande","Lucida Sans Unicode","bitstream vera sans","trebuchet ms",verdana;
}
#overlayInfo p{
color:red;
}
--></style><style >body {
padding:150px 50px;
font-family:"Lucida Grande","Lucida Sans Unicode","bitstream vera sans","trebuchet ms",verdana;
}
#overlayInfo p{
color:red;
}</style>
<link rel="stylesheet" type="text/css" href="http://flowplayer.org/tools/css/overlay-minimal.css" />
<script type="text/javascript"><!--
$(function() {
$("button[rel]").overlay({
start:{
width: 300,
absolute: false
},
finish:{
top:10,
left:400,
absolute:false
},
speed:3000,
fadeInSpeed:3000,
closeOnClick: false,
oneInstance:false,
close:'#overlayClose',//自定义关闭按钮
//expose: '#BAD0DB'//方式一:只以简单的背景色字符串方式设置
expose: {//方式二:以expose功能配置项方式设置
color: '#BAD0DB',
opacity: 0.7,
closeSpeed: 1000
},
onBeforeLoad:function(){
//alert(this.getTrigger().attr("rel")+":onBeforeLoad");//显示该overlay提示框的触发器rel属性值
},
onLoad:function(){
//alert(this.getTrigger().attr("rel")+":onLoad");
},
onBeforeClose:function(){
alert(this.getTrigger().attr("rel")+":onBeforeClose");
return false;
}
});
var overlayObj=$("#overlay").overlay({api:true});
overlayObj.load();//自动显示overlay,(无需触发,会在页面加载完成时自动触发)
setTimeout(function(){overlayObj.close();},2000);//2秒后,自动加载(出现)的提示框隐藏
$("#overlayInfo").append("<P>overlay is opened:"+overlayObj.isOpened()+"</p>");//判断此时是否有overlay提示框是否显示
$("#overlayInfo").append("<p>overlay background image:"+overlayObj.getBackgroundImage()+"</p>");
$("#overlayInfo").append("<p>overlay trigger:"+overlayObj.getTrigger()+"</p>");
$("#overlayInfo").append("<p>overlay config-speed:"+overlayObj.getConf().speed+"</p>");
$("#overlayInfo").append("<p>overlay content:"+overlayObj.getContent().html()+"</p>");
overlayObj.onBeforeLoad=function(){
alert(this.getContent().attr("id"));
}
});
// --></script>
<button rel="#overlay">Open overlay</button>
<button rel="#overlay2">Other overlay</button>
<div class="overlay" id="overlay">
<h2 style="margin:10px 0">Here is my overlay</h2>
<p style="float: left; margin:0px 20px 0 0;">
<span>$$$$$$$$$$</span>
</p>
<p>
Class aptent taciti sociosqu ad litora torquent per conubia nostra,
per inceptos himenaeos. Donec lorem ligula, elementum vitae,
imperdiet a, posuere nec, ante. Quisque mattis massa id metus.
</p>
</div>
<div class="overlay" id="overlay2">
<h2 style="margin:10px 0" >Here is my another overlay</h2>
<p>
Class aptent taciti sociosqu ad litora torquent per conubia nostra,
per inceptos himenaeos. Donec lorem ligula, elementum vitae,
imperdiet a, posuere nec, ante. Quisque mattis massa id metus.
</p>
<div>
<button id="overlayClose">close</button>
</div>
</div>
<div id="overlayInfo"></div>