在这个春天快要结束的时候,1.8也悄悄地来了。正如你在更新日志所看到的,这一版除了bug大部分消灭,还增加了几个新功能,下面将会逐一介绍。
首选就是maxmin参数,相信你在首页的演示中也有所遇见,它是用来输出窗口最小化/全屏的,只有设置了type:1和type:2它才有效。
运行$('#testMaxmin').on('click', function(){ $.layer({ type: 2, maxmin: true, title: '网络电视', area: ['580px', '350px'], iframe: { src: 'http://t.cn/zW9SbfS' } }) });
其次便是layer.photots(options),即相册层拓展模块,它支持两种模式,一种是直接获取当前页面的图片,一种是通过异步请求json数据渲染相册,以下演示后者,具体的json格式参见拓展模块页面→相册层的详细介绍
运行var photos; $('#testPhotos').on('click', function(){ //判断是否已经请求过相册,已请求过,则直接读取缓存数据 if(photos){ layer.photos({ html: '', //如果此处传入html值,则右侧区域会显示,不传则不显示 json: photos }); } else { layer.load(); $.getJSON('test/photos.json', {}, function(json){ photos = json; layer.photos({ html: '', //如果此处传入html值,则右侧区域会显示,不传则不显示 json: json }); layer.closeLoad() }); } });
转眼间,2013已近尾声。layer1.7出现在了12中旬,有哪些改变呢? 1.7主要优化了1.6的很多细节,也新增了一些功能,具体看更新日志吧。下面主要是简单介绍下layer.ext.js,这是个新增的家伙,layer的拓展模块
您可以通过layer.use('extend/layer.ext.js', callback); 载入它。在这个js里面,它又载入了它所依赖的css,so,你无需单独引入css。下面试着运行里面的一个layer.prompt方法,它是一个模仿系统prompt的弹层,具体使用您可以去看拓展方法的api
运行$('#testPrompt').on('click', function(){ //在对应的事件里面执行以下语句即可 layer.prompt({type: 3}, function(val){ if(val !== ''){ layer.tips('得到了:'+ val, '#testPrompt', 1); } }); });
你还可以弹出layer.ext.js中的=tab层
运行$('#testTab').on('click', function(){ layer.tab({ data:[ {title: '新年快乐', content:'唉,又老了一岁。。'}, {title: '参数说明', content:'content可以是html'}, {title: 'nodejs', content:'用来编写高性能的服务端javascript工具集,它使得前端开发有了更开阔的领域!'}, {title: '前端开发', content:'前端开发曾是计算机领域最具有争议的工种之一,但经过一批人多年的努力,目前已经赫然成为一种重量级职业,它以html、css、javascript为基础语言,致力于提供更人性化的交互体验,是当今互联网产品血拼的重要领域'} ], area: ['550px', '300px'] //宽度,高度 }); });
之所以称之为感恩版,是由于1.5.2发布以后的近三个月中,layer的关注度呈现空前的上升趋势,也收到了很多朋友给予的赞助。1.6.0正是为回馈亲们而更新的一个版本。它完全兼容1.5.2,所以可放心覆盖整个layer包含的文件。
首先介绍layer.area(index,options),它可以帮助你重置某个层(必须为type:1/type:2)的宽高坐标等属性。请点击运行下面一个例子,以让此窗口疯狂起来,本例子只用于演示该方法特性:
运行1.6.0开始,允许弹出任意个type:2模式的iframe的层,下面的例子将单纯为您展现多iframe窗口,其中包括点击当前窗口置顶功能:
运行var iframeMores = $('#iframeMores'), src = ['test/center.html', 'test/guodu.html', 'http://www.baidu.com/'], st = -1, len = src.length; iframeMores.on('click', function(){ for(; st < len; st++){ var offset = [(50+50*st)+'px', (50+50*st)+'px']; $.layer({ type:2, shade: [0], zIndex: layer.zIndex, offset: offset, fix: false, title: '网页', area: ['500px', '300px'], iframe: {src: src[st]}, success: function(othis){ layer.setTop(othis); } }) } st = -1; });
本次1.6.0只介绍2个新版示例。其它功能请详细阅读API和更新日志,