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 相关文章推荐
学习YUI.Ext第七日-View&amp;JSONView Part Two-一个画室网站的案例
Mar 10 Javascript
js获取指定的cookie的具体实现
Feb 20 Javascript
一个不错的js html页面倒计时可精确到秒
Oct 22 Javascript
js判断手机浏览器操作系统和微信浏览器的方法
Apr 30 Javascript
jquery注册文本框获取焦点清空,失去焦点赋值的简单实例
Sep 08 Javascript
详解JavaScript 中getElementsByName在IE中的注意事项
Feb 21 Javascript
js实现下一页页码效果
Mar 07 Javascript
jQuery表格(Table)基本操作实例分析
Mar 10 Javascript
Vue.js常用指令之循环使用v-for指令教程
Jun 27 Javascript
解决Layui数据表格显示无数据提示的问题
Nov 14 Javascript
JavaScript事件循环及宏任务微任务原理解析
Sep 02 Javascript
TypeScript中条件类型精读与实践记录
Oct 05 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
一个程序下载的管理程序(一)
2006/10/09 PHP
体育彩票排列三组选三算法分享
2014/03/07 PHP
php命令行使用方法和命令行参数说明
2014/04/08 PHP
php截取字符串函数substr,iconv_substr,mb_substr示例以及优劣分析
2014/06/10 PHP
php通过curl添加cookie伪造登陆抓取数据的方法
2016/04/02 PHP
phpcms中的评论样式修改方法
2016/10/21 PHP
PHP实现的curl批量请求操作示例
2018/06/06 PHP
jQuery点击弹出下拉菜单的小例子
2013/08/01 Javascript
JavaScript等比例缩放图片控制超出范围的图片
2013/08/06 Javascript
jQuery拖拽div实现思路
2014/02/19 Javascript
关于延迟加载JavaScript
2015/05/05 Javascript
JS实现的简单轮播图运动效果示例
2016/12/22 Javascript
vue中使用ueditor富文本编辑器
2018/02/08 Javascript
Vue中对比scoped css和css module的区别
2018/05/17 Javascript
jQuery实现点击图标div循环放大缩小功能
2018/09/30 jQuery
vue列表数据发生变化指令没有更新问题及解决方法
2020/01/16 Javascript
[01:07:47]Secret vs Optic Supermajor 胜者组 BO3 第一场 6.4
2018/06/05 DOTA
以一个投票程序的实例来讲解Python的Django框架使用
2016/02/18 Python
Python多维/嵌套字典数据无限遍历的实现
2016/11/04 Python
Python 中开发pattern的string模板(template) 实例详解
2017/04/01 Python
python 第三方库的安装及pip的使用详解
2017/05/11 Python
使用Python和xlwt向Excel文件中写入中文的实例
2018/04/21 Python
python学习——内置函数、数据结构、标准库的技巧(推荐)
2019/04/18 Python
使用python画社交网络图实例代码
2019/07/10 Python
python 实现dict转json并保存文件
2019/12/05 Python
Python3的unicode编码转换成中文的问题及解决方案
2019/12/10 Python
Python filter过滤器原理及实例应用
2020/08/18 Python
python中实现词云图的示例
2020/12/19 Python
味多美官网:蛋糕订购,100%使用天然奶油
2017/11/10 全球购物
写好求职应聘自荐信的三部曲
2013/09/21 职场文书
《中华少年》教学反思
2014/02/15 职场文书
国旗下演讲稿
2014/05/08 职场文书
2014党员学习兰辉先进事迹思想汇报
2014/09/17 职场文书
六一文艺汇演开幕词
2015/01/29 职场文书
2019银行竞聘书
2019/06/21 职场文书
Vue Element plus使用方法梳理
2022/12/24 Vue.js