JavaScript实现手风琴效果


Posted in Javascript onFebruary 18, 2021

本文实例为大家分享了JavaScript实现手风琴效果的具体代码,供大家参考,具体内容如下

JavaScript实现手风琴效果

代码:

<!DOCTYPE html>
<html lang="en">


<head>
 <meta charset="UTF-8">
 <meta name="viewport" content="width=device-width, initial-scale=1.0">
 <title>Document</title>
 <style>
  * {
   margin: 0;
   padding: 0;
  }
  
  ul {
   width: 100%;
   text-align: center;
  }
  
  ul li {
   list-style: none;
   overflow: hidden;
   display: inline-block;
   transition: all 1s;
  }
 </style>
</head>

<body>
 <ul>

 </ul>
 <script>
  var ul = document.querySelector("ul");
  var imgs = ["img/img4.jpg", "img/img5.jpg", "img/img6.jpg", "img/img7.jpg", "img/img8.jpg", "img/img9.jpg", ];
  for (var i = 0; i < imgs.length; i++) {
   var li = document.createElement("li");
   var img = document.createElement("img");
   img.src = imgs[i];
   li.appendChild(img);
   ul.appendChild(li);
  }
  var lis = document.querySelectorAll("li");
  window.onload = window.onresize = function() {
   for (var i = 0; i < lis.length; i++) {
    lis[i].style.width = (ul.offsetWidth / imgs.length) - 10 + "px";
   }
  }
  var imgM = document.querySelectorAll("img");
  for (let i = 0; i < imgM.length; i++) {
   imgM[i].onmouseenter = function() {
    for (var j = 0; j < imgM.length; j++) {
     lis[j].style.width = ((ul.offsetWidth - imgM[i].offsetWidth) / (imgs.length - 1)) - 10 + "px";
    }
    lis[i].style.width = imgM[i].offsetWidth + "px";
   }

   imgM[i].onmouseleave = function() {
    for (var i = 0; i < lis.length; i++) {
     lis[i].style.width = (ul.offsetWidth / imgs.length) - 10 + "px";
    }
   }
  }
 </script>
</body>

</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
一个简单的JavaScript数据缓存系统实现代码
Oct 24 Javascript
juqery 学习之四 筛选查找
Nov 30 Javascript
js的onload事件及初始化按钮事件示例代码
Sep 25 Javascript
js实现目录定位正文示例
Nov 14 Javascript
node.js中的fs.rename方法使用说明
Dec 16 Javascript
jquery实现简单实用的打分程序实例
Jul 23 Javascript
基于jQuery通过jQuery.form.js插件实现异步上传
Dec 13 Javascript
复杂的javascript窗口分帧解析
Feb 19 Javascript
纯JS实现简单的日历
Jun 26 Javascript
react-native-video实现视频全屏播放的方法
Mar 19 Javascript
浅析微信小程序modal弹窗关闭默认会执行cancel问题
Oct 14 Javascript
微信小程序实现比较功能的方法汇总(五种方法)
Mar 07 Javascript
代码块高亮可复制显示js插件highlight.js+clipboard.js整合
Feb 15 #Javascript
node.js 基于 STMP 协议和 EWS 协议发送邮件
Feb 14 #Javascript
如何在 Vue 中使用 JSX
Feb 14 #Vue.js
Vue单页面应用中实现Markdown渲染
Feb 14 #Vue.js
vue仿携程轮播图效果(滑动轮播,下方高度自适应)
Feb 11 #Vue.js
详解ES6实现类的私有变量的几种写法
Feb 10 #Javascript
微信小程序实现点赞业务
Feb 10 #Javascript
You might like
百事可乐也出咖啡了 双倍咖啡因双倍快乐
2021/03/03 咖啡文化
php sprintf()函数让你的sql操作更安全
2008/07/23 PHP
php Ubb代码编辑器函数代码
2012/07/05 PHP
PHP数据类型之整数类型、浮点数的介绍
2013/04/28 PHP
php实现利用phpexcel导出数据
2013/08/24 PHP
使用PHP生成PDF方法详解
2015/01/23 PHP
php基于dom实现的图书xml格式数据示例
2017/02/03 PHP
浅谈PHP5.6 与 PHP7.0 区别
2019/10/09 PHP
PHPstorm启用自动换行的方法详解(IDE)
2020/09/17 PHP
javascript encodeURI和encodeURIComponent的比较
2010/04/03 Javascript
JavaScript简单实现网页回到顶部功能
2013/11/12 Javascript
jQuery获取选中内容及设置元素属性的方法
2014/07/09 Javascript
详解js闭包
2014/09/02 Javascript
JQuery工具函数汇总
2015/06/15 Javascript
浅谈js的异步执行
2016/10/18 Javascript
利用Javascript实现简单的转盘抽奖
2017/02/13 Javascript
如何编写jquery插件
2017/03/29 jQuery
angularjs实现首页轮播图效果
2017/04/14 Javascript
bootstrap可编辑下拉框jquery.editable-select
2017/10/12 jQuery
Vue+Flask实现简单的登录验证跳转的示例代码
2018/01/13 Javascript
JQuery+drag.js上传图片并且实现图片拖曳
2020/11/18 jQuery
[01:03:27]NAVI vs EG 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/17 DOTA
解决Python下json.loads()中文字符出错的问题
2018/12/19 Python
Python3实现的判断回文链表算法示例
2019/03/08 Python
用Q-learning算法实现自动走迷宫机器人的方法示例
2019/06/03 Python
python中dict使用方法详解
2019/07/17 Python
Python 通过微信控制实现app定位发送到个人服务器再转发微信服务器接收位置信息
2019/08/05 Python
关于Flask项目无法使用公网IP访问的解决方式
2019/11/19 Python
彻底解决Python包下载慢问题
2020/11/15 Python
Python 用__new__方法实现单例的操作
2020/12/11 Python
编码转换,怎样实现将GB2312编码的字符串转换为ISO-8859-1编码的字符串
2014/01/07 面试题
总经理司机岗位职责
2014/02/06 职场文书
入党介绍人考察意见
2015/06/01 职场文书
欠条范文
2015/07/03 职场文书
2016年教师党员创先争优承诺书
2016/03/24 职场文书
MySQL 原理与优化之Limit 查询优化
2022/08/14 MySQL