基于jquery的手风琴图片展示效果实现方法


Posted in Javascript onDecember 16, 2014

本文实例讲述了基于jquery的手风琴图片展示效果实现方法。分享给大家供大家参考。具体实现方法如下:

代码运行效果如下图所示:

基于jquery的手风琴图片展示效果实现方法

index.html页面代码如下:

<!DOCTYPE html>

<html class=''>

<head>

    <title>一款基于jquery的手风琴图片展示效果demo</title>

    <style class="cp-pen-styles">

        div

        {

            -moz-box-sizing: border-box;

            box-sizing: border-box;

        }

        

        html, body, .page-container

        {

            height: 100%;

            overflow: hidden;

        }

        

        .page-container

        {

            -webkit-transition: padding 0.2s ease-in;

            transition: padding 0.2s ease-in;

            padding: 80px;

        }

        .page-container.opened

        {

            padding: 0;

        }

        .page-container.opened .flex-container .country:not(.active)

        {

            opacity: 0;

            -webkit-flex: 0;

            -ms-flex: 0;

            flex: 0;

        }

        .page-container.opened .flex-container .country:not(.active) div

        {

            opacity: 0;

        }

        .page-container.opened .flex-container .active:after

        {

            -webkit-filter: grayscale(0%) !important;

            filter: grayscale(0%) !important;

        }

        

        .flex-container

        {

            display: -webkit-flex;

            display: -ms-flexbox;

            display: flex;

            height: 100%;

        }

        @media all and (max-width: 900px)

        {

            .flex-container

            {

                -webkit-flex-direction: column;

                -ms-flex-direction: column;

                flex-direction: column;

            }

        }

        

        .country

        {

            position: relative;

            -webkit-flex-grow: 1;

            -ms-flex-positive: 1;

            flex-grow: 1;

            -webkit-flex: 1;

            -ms-flex: 1;

            flex: 1;

            -webkit-transition: 0.5s ease-in-out;

            transition: 0.5s ease-in-out;

            cursor: pointer;

            font-family: "Bree Serif" , serif;

            text-align: center;

            color: #fff;

            font-size: 22px;

            text-shadow: 0 0 3px #000;

        }

        .country div

        {

            position: absolute;

            width: 100%;

            z-index: 10;

            top: 50%;

            text-align: center;

            -webkit-transition: 0.1s;

            transition: 0.1s;

            -webkit-transform: translateY(-50%);

            -ms-transform: translateY(-50%);

            transform: translateY(-50%);

            -webkit-filter: none;

            filter: none;

        }

        .country:after

        {

            content: " ";

            position: absolute;

            top: 0;

            left: 0;

            right: 0;

            bottom: 0;

            background-size: cover;

            -webkit-transition: 0.5s ease-in-out;

            transition: 0.5s ease-in-out;

            -webkit-filter: grayscale(100%);

            filter: grayscale(100%);

        }

        .country:hover

        {

            -webkit-flex-grow: 6;

            -ms-flex-positive: 6;

            flex-grow: 6;

        }

        .country:hover:after

        {

            -webkit-filter: grayscale(0%);

            filter: grayscale(0%);

        }

        @media all and (max-width: 900px)

        {

            .country

            {

                height: auto;

            }

        }

        

        .netherlands:after

        {

            background-image: url("Netherlands.png");

            background-position: center;

        }

        

        .belgium:after

        {

            background-image: url("belgium-307_3.jpg");

            background-position: center;

        }

        

        .france:after

        {

            background-image: url("30.jpg");

            background-position: center;

        }

        

        .germany:after

        {

            background-image: url("vacation.jpg");

            background-position: center;

        }

        

        .england:after

        {

            background-image: url("england.jpg");

            background-position: center;

        }

    </style>

</head>

<body>

    <div class="page-container">

        <div class="flex-container">

            <div class="country netherlands">

                <div>

                    Netherlands</div>

            </div>

            <div class="country belgium">

                <div>

                    Belgium</div>

            </div>

            <div class="country france">

                <div>

                    France</div>

            </div>

            <div class="country germany">

                <div>

                    Germany</div>

            </div>

            <div class="country england">

                <div>

                    England</div>

            </div>

        </div>

    </div>

    <script src='jquery.js'></script>

    <script>

        $('.country').click(function () {

            $(this).toggleClass('active');

            $('.page-container').toggleClass('opened');

        }); //@ sourceURL=pen.js

    </script>

</body>

</html>

完整实例代码点击此处本站下载

希望本文所述对大家的jQuery特效设计有所帮助。

Javascript 相关文章推荐
jquery自动切换tabs选项卡的具体实现
Dec 24 Javascript
JS图片无缝、平滑滚动代码
Mar 11 Javascript
HTML,CSS,JavaScript速查表推荐
Dec 02 Javascript
基于jquery编写分页插件
Mar 07 Javascript
JS平滑无缝滚动效果的实现代码
May 06 Javascript
AngularJs表单验证实例详解
May 30 Javascript
JavaScript自定义分页样式
Jan 17 Javascript
JavaScript对象拷贝与赋值操作实例分析
Dec 10 Javascript
jquery将json转为数据字典的实例代码
Oct 11 jQuery
详解vue组件之间的通信
Aug 30 Javascript
element多个表单校验的实现
May 27 Javascript
Vue实现跑马灯样式文字横向滚动
Nov 23 Vue.js
node.js中的fs.lchownSync方法使用说明
Dec 16 #Javascript
node.js中的fs.lchown方法使用说明
Dec 16 #Javascript
基于Bootstrap+jQuery.validate实现Form表单验证
Dec 16 #Javascript
node.js中的fs.fchmodSync方法使用说明
Dec 16 #Javascript
node.js中的fs.fchmod方法使用说明
Dec 16 #Javascript
node.js中的fs.lchmodSync方法使用说明
Dec 16 #Javascript
node.js中的fs.lchmod方法使用说明
Dec 16 #Javascript
You might like
解决PHP在DOS命令行下却无法链接MySQL的技术笔记
2010/12/29 PHP
使用 PHPMAILER 发送邮件实例应用
2012/11/07 PHP
php selectradio和checkbox默认选择的实现方法详解
2013/06/29 PHP
PHP中快速生成随机密码的几种方式
2017/04/17 PHP
PHP回调函数与匿名函数实例详解
2017/08/16 PHP
Laravel如何使用Redis共享Session
2018/02/23 PHP
JavaScript 事件参考手册
2008/12/24 Javascript
javascript 二进制运算技巧解析
2012/11/27 Javascript
javascript时间函数基础介绍
2013/03/28 Javascript
jQuery中replaceWith()方法用法实例
2014/12/25 Javascript
JavaScript实现数字数组按照倒序排列的方法
2015/04/06 Javascript
JavaScript中Function()函数的使用教程
2015/06/04 Javascript
JS给Textarea文本框添加行号的方法
2015/08/20 Javascript
详解AngularJS控制器的使用
2016/03/09 Javascript
AngularJS入门教程之ng-class 指令用法
2016/08/01 Javascript
Vue使用vue-area-linkage实现地址三级联动效果的示例
2018/06/27 Javascript
bootstrapTable+ajax加载数据 refresh更新数据
2018/08/31 Javascript
详解vue更改头像功能实现
2019/04/28 Javascript
Vue中使用better-scroll实现轮播图组件
2020/03/07 Javascript
[02:37]2015国际邀请赛选手档案—LGD.Xiao8
2015/07/28 DOTA
Python中用Ctrl+C终止多线程程序的问题解决
2013/03/30 Python
详解用python实现简单的遗传算法
2018/01/02 Python
浅谈python中requests模块导入的问题
2018/05/18 Python
python中将正则过滤的内容输出写入到文件中的实例
2018/10/21 Python
python实现电子书翻页小程序
2019/07/23 Python
PyQt5中向单元格添加控件的方法示例
2020/03/24 Python
keras的三种模型实现与区别说明
2020/07/03 Python
python可视化分析的实现(matplotlib、seaborn、ggplot2)
2021/02/03 Python
使用CSS3来实现滚动视差效果的教程
2015/08/24 HTML / CSS
Kingsoft金山公司C/C++笔试题
2016/05/10 面试题
电子商务专业推荐信范文
2013/12/02 职场文书
文明餐桌活动方案
2014/02/11 职场文书
安全施工责任书
2014/08/25 职场文书
2014年人民调解工作总结
2014/12/08 职场文书
八年级作文之我的母亲
2019/12/10 职场文书
详解gantt甘特图可拖拽、编辑(vue、react都可用 highcharts)
2021/11/27 Vue.js