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 相关文章推荐
JS解密入门之凭直觉解
Jun 25 Javascript
使用UglifyJS合并/压缩JavaScript的方法
Mar 07 Javascript
JavaScript伸缩的菜单简单示例
Dec 03 Javascript
JS中使用sort结合localeCompare实现中文排序实例
Jul 23 Javascript
浅谈JSON.stringify()和JOSN.parse()方法的不同
Aug 29 Javascript
Javascript6中字符串的四个新用法分享
Sep 11 Javascript
jQuery使用JSONP实现跨域获取数据的三种方法详解
May 04 jQuery
Angularjs上传图片实例详解
Aug 06 Javascript
vue自定义底部导航栏Tabbar的实现代码
Sep 03 Javascript
vue element中axios下载文件(后端Python)
May 10 Javascript
vue远程加载sfc组件思路详解
Dec 25 Javascript
jQuery实现飞机大战小游戏
Jul 05 jQuery
代码块高亮可复制显示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
php在服务器执行exec命令失败的解决方法
2012/03/03 PHP
PHP获取毫秒级时间戳的方法
2015/04/15 PHP
wampserver改变默认网站目录的办法
2015/08/05 PHP
php下载文件,添加响应头的简单实例
2016/09/22 PHP
thinkPHP多表查询及分页功能实现方法示例
2017/07/03 PHP
PHP单例模式与工厂模式详解
2017/08/29 PHP
jquery中文乱码的多种解决方法
2013/06/21 Javascript
js输出阴历、阳历、年份、月份、周示例代码
2014/01/29 Javascript
javascript中为某个元素指定事件的三种方式
2014/08/07 Javascript
3种Jquery限制文本框只能输入数字字母的方法
2014/12/03 Javascript
JavaScript生成随机数的4种自定义函数分享
2015/02/28 Javascript
JavaScript 事件对象介绍
2015/04/13 Javascript
AngularJS基础 ng-repeat 指令简单示例
2016/08/03 Javascript
wap手机端解决返回上一页的js实例
2016/12/08 Javascript
VUE重点问题总结
2018/03/19 Javascript
jQuery实现的简单对话框拖动功能示例
2018/06/05 jQuery
nodejs 使用 js 模块的方法实例详解
2018/12/04 NodeJs
Vue2.x Todo之自定义指令实现自动聚焦的方法
2019/01/08 Javascript
JS求1到任意数之间的所有质数的方法详解
2019/05/20 Javascript
Vue编程式跳转的实例代码详解
2019/07/10 Javascript
jQuery 实现扁平式小清新导航
2020/07/07 jQuery
Python实现提取文章摘要的方法
2015/04/21 Python
用C++封装MySQL的API的教程
2015/05/06 Python
对numpy中数组转置的求解以及向量内积计算方法
2018/10/31 Python
Python爬虫爬取杭州24时温度并展示操作示例
2020/03/27 Python
如何在mac版pycharm选择python版本
2020/07/21 Python
python时间序列数据转为timestamp格式的方法
2020/08/03 Python
美国医疗用品、医疗设备和家庭保健用品商店:Medical Supply Depot
2018/07/08 全球购物
芝加哥牛排公司:Chicago Steak Company
2018/10/31 全球购物
瑞典度假品牌:OAS
2019/05/28 全球购物
英国钻石公司:British Diamond Company
2020/02/16 全球购物
写出一个方法实现冒泡排序
2016/07/08 面试题
高级文秘工作总结的自我评价
2013/09/28 职场文书
应届生找工作求职信
2014/06/24 职场文书
数学教师个人工作总结
2015/02/06 职场文书
出国留学导师推荐信
2015/03/26 职场文书