首页 > 其他分享 >支持移动手机的纯js lightbox插件GLightbox

支持移动手机的纯js lightbox插件GLightbox

时间:2024-12-20 11:43:57浏览次数:9  
标签:插件 lightbox js slide myLightbox GLightbox

GLightbox是一款支持移动手机的纯js lightbox插件。GLightbox可以支持图片,视频,内联内容和iframes等,非常强大。

 

在线演示  下载

 使用方法

在页面中引入glightbox.css和glightbox.js文件。

<link href="glightbox.css" rel="stylesheet">
<script src="glightbox.js" type="text/javascript"></script>
                
 HTML结构

使用时,可以在页面中先放置一组缩略图,通过点击缩略图来弹出lightbox。例如:

<ul class="box-container three-cols">
        <li class="box">
           <a href="demo/img/large/gm1.jpg" class="glightbox">
      <img src="demo/img/small/gm1.jpg">
    </a>
        </li>
        <li class="box">
          <a href="demo/img/large/gm2.jpg" class="glightbox">
      <img src="demo/img/small/gm2.jpg" alt="image">
    </a>
        </li>
        <li class="box">
    <a href="demo/img/large/gm3.jpg" class="glightbox manuelin">
      <img src="demo/img/small/gm3.jpg" alt="image">
    </a>
        </li>
        <li class="box">
    <a href="demo/img/large/gm4.jpg" class="glightbox">
      <img src="demo/img/small/gm4.jpg" alt="image">
    </a>
        </li>
</ul>
                
 初始化插件

在页面DOM元素加载完毕之后,可以通过GLightbox()方法来完成对该Lightbox插件的初始化。默认带glightbox class的元素在点击后会弹出lightbox。

var lightbox = GLightbox();
                

 配置参数

GLightbox插件的可用配置参数如下:

参数 描述 默认值
selector lightbox选择器。 glightbox
skin lightbox的皮肤名称。它会为lightbox添加一个class类,你可以通过这个class类来添加自己的样式。 clean
openEffect lightbox打开时的动画效果。可选值有:zoomIn, fade, zoom。 zoomIn
closeEffect lightbox关闭时的动画效果。可选值有:zoomOut, fade, zoom。 zoomOut
slideEffect lightbox切换时的动画效果。可选值有:fade, slide, zoom。 slide
moreText 在移动设备上的描述文本。 "See more"
closeButton 是否显示关闭按钮。 true
startAt lightbox初始化时显示哪个图片或其它内容。 0
width 内联内容或 iframes 的宽度。 900
height 内联内容或 iframes 的高度。 506
videosWidth 视频的宽度。 900
videosHeightDefault 视频的高度。 506
descPosition lightbox描述信息的位置。 bottom
loopAtEnd 是否在终点结束循环。 false
onOpen lightbox打开时的回调函数。 null
onClose lightbox关闭时的回调函数。 null
beforeSlideChange 在lightbox切换前触发的回调函数。

beforeSlideChange: function(prevSlide, slide){console.log(slide);}

null
afterSlideChange 在lightbox切换后触发的回调函数。

afterSlideChange: function(prevSlide, activeSlide){console.log(activeSlide);}

null
beforeSlideLoad 在lightbox加载完成前触发的回调函数。

beforeSlideLoad: function(slide, data){console.log(slide);}

null
afterSlideLoad 在lightbox加载完成后触发的回调函数。

afterSlideLoad: function(slide, data){console.log(slide);}

 
autoplayVideos 视频在打开时自动播放? true
jwplayer JW Player的配置。参考下面的JW Player配置。 对象
vimeo vimeo的配置,参考下面的vimeo视频配置。 对象
youtube youtube的配置,参考下面的youtube视频配置。 对象

JW Player配置:

jwplayer: {
  api: "url to jwplayer js file",
  licenseKey: "your jwplayer license",
  params: {
      width: '100%',
      aspectratio: '16:9',
      stretching: 'uniform',
      .....
  }
}
                

vimeo视频配置:

vimeo: {
  api: "https://player.vimeo.com/api/player.js",
  params: {
      api: 1,
      title: 0,
      byline: 0,
      .....
  }
}                  
                

youtube视频配置:

youtube: {
  api: "https://www.youtube.com/iframe_api",
  params: {
      enablejsapi: 1,
      showinfo: 0,
      .....
  }
}                  
                

 方法

GLightbox lightbox插件的可用API方法有:

var myLightbox = GLightbox({
  'selector': 'glightbox',
  ......
});

// 跳转到指定的slide
myLightbox.goToSlide(2);

// 前一个slide
myLightbox.prevSlide();

// 下一个slide
myLightbox.nextSlide();

//获取当前激活的slide。它会返回当前激活的slide节点。
myLightbox.getActiveSlide();

// 关闭 lightbox
myLightbox.close();                  
                

 浏览器兼容

GLightbox插件可以在任何支持Flexbox的浏览器中正常工作。

  • Safari
  • Mobile Safari
  • Opera
  • Chrome
  • Edge
  • Firefox
  • Internet Explorer 11

标签:插件,lightbox,js,slide,myLightbox,GLightbox
From: https://www.cnblogs.com/skonw/p/18618984

相关文章

  • ssm+jsp794学生工作管理系统设计与实现
    博主介绍:专注于Java(springbootssm等开发框架)vue .net phpphythonnode.js  uniapp微信小程序等诸多技术领域和毕业项目实战、企业信息化系统建设,从业十五余年开发设计教学工作☆☆☆精彩专栏推荐订阅☆☆☆☆☆不然下次找不到哟我的博客空间发布了1600+毕设......
  • vue.js框架概述
    vue.js框架是什么Vue.js是一个用于构建用户界面的渐进式JavaScript框架。它被设计为能够轻松地被集成进项目的部分功能,或者用于构建完整的前端应用。Vue.js的核心库只关注视图层,使得它非常容易学习,并且能够和其他库或已有项目整合。同时,Vue.js也完全能够支持构建复杂的单......
  • vue.js组件化开发
    什么是组件化开发组件化开发是一种软件设计方法,它将大型软件系统分解成更小、更易于管理的部分,这些部分被称为组件。每个组件封装了特定的功能和界面,并且可以独立于系统的其他部分进行开发和测试。这种方法使得开发过程更加模块化,有助于提高代码的可重用性和可维护性。在V......
  • 【 Node.js 升级16至18出现“Error: error:0308010C”】
    node:internal/crypto/hash:71this[kHandle]=new_Hash(algorithm,xofLen);^Error:error:0308010C:digitalenveloperoutines::unsupportedatnewHash(node:internal/crypto/hash:71:19)rror:error:0308010C:digitalenveloperoutines::unsupportedatnewHa......
  • (免费源码)计算机毕业设计必学必看 万套实战教程 java、python、php、node.js、c#、APP
    摘要随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,机房预约系统小程序被用户普遍使用,为方便用户能够可以随时进行机房预约系统小程序的数据信息管理,特开发了基于机房预约系统......
  • (免费源码)计算机毕业设计必学必看 万套实战教程 java、python、php、node.js、c#、APP
    摘 要随着科学技术的飞速发展,社会的方方面面、各行各业都在努力与现代的先进技术接轨,通过科技手段来提高自身的优势,校园商店当然也不能排除在外。校园商店是以实际运用为开发背景,运用软件工程原理和开发方法,采用Java技术构建的一个管理系统。整个开发过程首先对软件系统进行......
  • EverEdit插件:CHM助手说明
    1.1基本信息  CHM助手是一款EverEdit文本编辑器插件(脚本),使用Javascript语言编写,脚本结合EverEdit提供的基础功能,完成html文件的格式整理、chm工程文件及附属文件的生成及编译等。  当前版本:1.0.0  插件作者:太阳雨1.2插件功能  下图是CHM助手的功能菜单,选择......
  • SpringBoot3整合FastJSON2如何配置configureMessageConverters
    在SpringBoot3中整合FastJSON2主要涉及到以下几个步骤,包括添加依赖、配置FastJSON作为JSON处理器等。下面是详细的步骤:1.添加依赖首先,你需要在你的pom.xml文件中添加FastJSON2的依赖。以下是Maven依赖的示例:<!--https://mvnrepository.com/artifact/com......
  • P4407 [JSOI2009] 电子字典
    题目大意详细题目传送门给出\(n\)个互不相同字典串\(S_i\)。和\(m\)个匹配串\(Q_i\)。如果有字典串\(S_i=Q_i\),输出\(-1\)。三种变换操作:在\(S_{i,j}\)后添加任意一个字符删除\(S_{i,j}\)将\(S_{i,j}\)改成任意一个字符。求每一个匹配串如果只进行\(1\)次......
  • js 如何区分页面刷新还是关闭
    在JavaScript中,要区分浏览器是关闭还是刷新,可以通过监听beforeunload事件和unload事件,并结合sessionStorage来实现。下面是一个示例代码,展示了如何区分这两种情况://页面加载时执行window.onload=function(){//检查sessionStorage中是否有标记if(session......