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函数ajax
Aug 20 Javascript
关于javascript 回调函数中变量作用域的讨论
Sep 11 Javascript
jQuery Study Notes学习笔记 (二)
Aug 04 Javascript
javascript+canvas制作九宫格小程序
Dec 28 Javascript
对JavaScript中this指针的新理解分享
Jan 31 Javascript
原生JavaScript编写俄罗斯方块
Mar 30 Javascript
限制只能输入数字的实现代码
May 16 Javascript
js 获取本地文件及目录的方法(推荐)
Nov 10 Javascript
Vue-cropper 图片裁剪的基本原理及思路讲解
Apr 17 Javascript
基于jQuery实现的设置文本区域的光标位置
Jun 15 jQuery
Ant Design Vue table中列超长显示...并加提示语的实例
Oct 31 Javascript
vue项目中的支付功能实现(微信支付和支付宝支付)
Feb 18 Vue.js
代码块高亮可复制显示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获取字符串前几位的实例(substr返回字符串的子串用法)
2017/03/08 PHP
PHP单例模式简单用法示例
2017/06/23 PHP
javascript下过滤数组重复值的代码
2007/09/10 Javascript
jquery 框架使用教程 AJAX篇
2009/10/11 Javascript
jQuery数组处理方法汇总
2011/06/20 Javascript
jQuery操作input type=radio的实现代码
2012/06/14 Javascript
jQuery实现可拖动的浮动层完整代码
2013/05/27 Javascript
jQuery添加/改变/移除CSS类及判断是否已经存在CSS
2014/08/20 Javascript
JavaScript设计模式之装饰者模式介绍
2014/12/28 Javascript
jquery仿百度百科底部浮动导航特效
2015/08/08 Javascript
json+jQuery实现的无限级树形菜单效果代码
2015/08/27 Javascript
jQuery progressbar通过Ajax请求实现后台进度实时功能
2016/10/11 Javascript
解析JavaScript模仿块级作用域
2016/12/29 Javascript
Vue.js在使用中的一些注意知识点
2017/04/29 Javascript
React-Native 组件之 Modal的使用详解
2017/08/08 Javascript
vue.js异步上传文件前后端实现代码
2017/08/22 Javascript
Angular实现表单验证功能
2017/11/13 Javascript
vue项目中使用vue-i18n报错的解决方法
2019/01/13 Javascript
[47:52]DOTA2-DPC中国联赛正赛 iG vs LBZS BO3 第二场 3月4日
2021/03/11 DOTA
Python获取系统默认字符编码的方法
2015/06/04 Python
基于python进行桶排序与基数排序的总结
2018/05/29 Python
详解python中的json和字典dict
2018/06/22 Python
Python连接Redis的基本配置方法
2018/09/13 Python
Win10环境python3.7安装dlib模块趟过的坑
2019/08/01 Python
django-rest-swagger对API接口注释的方法
2019/08/29 Python
pytorch中的卷积和池化计算方式详解
2020/01/03 Python
详解Windows下PyCharm安装Numpy包及无法安装问题解决方案
2020/06/18 Python
印度尼西亚值得信赖的第一家网店:Bhinneka
2018/07/16 全球购物
英国拖鞋购买网站:Bedroom Athletics
2020/02/28 全球购物
几个SQL的面试题
2014/03/08 面试题
入党介绍人评语
2014/05/06 职场文书
小学校本培训方案
2014/06/06 职场文书
2015年银行大堂经理工作总结
2015/04/24 职场文书
反腐倡廉心得体会2016
2016/01/13 职场文书
如何判断pytorch是否支持GPU加速
2021/06/01 Python
实现一个简单得数据响应系统
2021/11/11 Javascript