layer弹出相册层
如果想要制作一个简单的相册,可以采用这个插件的方法。如果你的图片是从后台传过来的json格式里,可以通过ajax加载让图片显示在页面上,然后在使用layer插件,做出点击以后就可以查看大图的效果。
一、通过ajax请求动态获取json,然后在得到json中的图片的地址。
1.页面
- <div class="main" id="main"></div>
2.ajax请求
- <script>
- $(document).ready(function(){
- $.ajax({
- url:'img.json',
- type: "get",
- dataType: "json",
- success:function(data){
- var authors=data.authors;
- //var img=authors[0].imagesurl;
- for(var i=0;i<authors.length;i++){
- $("#main").append('<img class="list" id="list'+i+'" src='+authors[i].imagesurl+' title='+authors[i].imagesurl1+' alt='+authors[i].imagesname+'/>')
- }
- },
- });
- })
3.页面效果
二、使用layer插件做出照片弹出
1、引入文件
这里我要说一些注意事项:
(1)、可能有些网站还会引入layer.ext.js这个文件,其实是不需要引入的,但是这个文件是有用的,还是要有这个文件的。layer.css这个文件也是要有的,但是也不需要引入。
2、ajax加载完成后设置弹出层。
- $(document).ready(function(){
- $.ajax({
- url:'img.json',
- type: "get",
- dataType: "json",
- success:function(data){
- var authors=data.authors;
- //var img=authors[0].imagesurl;
- for(var i=0;i<authors.length;i++){
- $("#main").append('<img class="list" id="list'+i+'" src='+authors[i].imagesurl+' title='+authors[i].imagesurl1+' alt='+authors[i].imagesname+'/>')
- }
- ;!function(){
- layer.use('layer.ext.js', function(){
- //初始加载即调用,所以需放在ext回调里
- layer.ext = function(){
- layer.photosPage({
- title: '获取页面元素包含的所有图片',
- parent:'#main'
- });
- };
- });
- }();
- },
- });
- })
这个数据加载成功以后的函数是即时函数,并且我们不需要通过循环给每个图片添加点击事件。
3、效果如图。
三、(1)这是非常重要的一点,可能会出现的错误layer.use is not a function
原因是我们引入文件夹的路径不对。layer.min.js文件和layer.ext.js文件如果在同一个路径下,那么,代码中layer.use('layer.ext.js', function(){这一行就是直接写layer.ext.js就可以了。如果是这样的关系,如图:
如果是这样的关系,那么代码就是layer.use('extend/layer.ext.js', function(){。
(2)、如果遇到这样的错误,就是我们的样式文件路径不对。
下载layer这个插件包的时候会有一个skin文件夹,我们需要把这个文件放在如图所示的路径:
这个skin文件的路径也是相对于layer.min.js文件的。必须放在同级。只要保证相对路径是这样的就可以了。
如果有兴趣可以找找原因,为什么需要这么放,或者亲自试一试,看看到底需要怎么部署。
总之,大胆的尝试。行动使一切成为可能。
layer弹出相册层的更多相关文章
- layer弹出标签层tab
引入文件: <script type="text/javascript" src="layer/layer.min.js"></script& ...
- layer弹出层不居中解决方案
layer弹出层不居中解决方案 代码头中加入以下代码即可 <!doctype html>
- layer弹出层不居中解决方案,layer提示不屏幕居中解决方法,layer弹窗不居中解决方案
layer弹出层不居中解决方案,layer提示不屏幕居中解决方法,layer弹窗不居中解决方案 >>>>>>>>>>>>> ...
- layer弹出层
最近因为项目要求做了一个layer弹出层demo,先看效果图 好了,现在开始上代码 index.jsp <%@ page language="java" import=&qu ...
- layer弹出层详解
前言:学习layer弹出框,之前项目是用bootstrap模态框,后来改用layer弹出框,在文章的后面,我会分享项目的一些代码(我自己写的). layer至今仍作为layui的代表作,她的受众广泛并 ...
- Layer弹出层销毁问题
Layer弹出层销毁问题 最近开发时有个问题记录一下 点击按钮显示相应的图表信息,当时自己点感觉没问题,谁知到测试手里多次点击就会有后续打开的窗口无法渲染问题,看了半天才发现是调用layer.clos ...
- layer弹出层不居中解决方案(转)
@感谢参考文章 原文内容: 一.问题描述 用layer做操作结果提示时,发现如果页面超出屏幕的高度时,弹出的提示不是屏幕居中,而是在页面高度的中间,如果一个页面的高度比较大,就看不到提示了. 还有一种 ...
- layer 弹出层 回调函数调用 弹出层页面 函数
1.项目中用到layer 弹出层,定义一个公用的窗口,问题来了窗口弹出来了,如何保存页面上的数据呢?疯狂百度之后,有了结果,赶紧记下. 2.自己定义的公共页面方法: layuiWindow: func ...
- layer 弹出层 不居中
layer弹出层不居中解决方案 代码头中加入以下代码即可 <!doctype html>
随机推荐
- neu 1694 Primorial vs LCM 数论
1694: Primorial vs LCM 时间限制: 4 Sec 内存限制: 128 MB[提交][状态][讨论版] 题目描述 Given N (2<=N<=10^14), what ...
- Android之动态改变控件大小
利用getLayoutParams()方法和setLayoutParams()方法.三步曲:1.首先利用getLayoutParams()方法,获取控件的LayoutParams.eg:LayoutP ...
- docker运行python3.6+flask小记
docker新手. 目的:开发运行多个web api项目的时候,方便开发,兼顾部署. 方案大概这样: 1 隔离:系统运行在容器里,1容器只起1进程,代替在host起多个venv或虚拟机: 2调试和备份 ...
- VSAN Cluster Failed
failed message:AdVanced vSAN configuration in syncChecks if all of the hosts in a vSAN cluster have ...
- jsp / get 中文乱码问题
POST 方式下的解决方式还算简单,因为POST 方式下提交的数据都是以二进制的方式附加在http请求的body部分发送,只需要在后台指定编码格式就足矣解决. GET 方式下会将参数直接附加到url ...
- English trip -- VC(情景课)1 E Writing
Talk with a partner ['pɑːtnə] (伙伴) 与同伴说一说 Comple the words 写全单词 first second third last name area c ...
- java plsql 调用oracle数组类型
首先当然是在oracle中建立type CREATE OR REPLACE TYPE cux_proxy_bid_award_rec IS OBJECT ( trading_partner_id NU ...
- HashMap知识点、问题
转载:https://blog.csdn.net/qq_27007251/article/details/71403647 https://www.cnblogs.com/kxdblog/p/4323 ...
- vscode使用集
abotteram.typescript-react-snippets-0.1.9akamud.vscode-javascript-snippet-pack-0.1.5alechp.react-too ...
- TCP为什么是三次握手,为什么不是两次或者四次 && TCP四次挥手
这是一个很有意思的问题~ 首先,我们要知道TCP是全双工的,即客户端在给服务器端发送信息的同时,服务器端也可以给客户端发送信息.而半双工的意思是A可以给B发,B也可以给A发,但是A在给B发的时候,B不 ...