WEB前端:06_accordion手风琴效果

accordion手风琴效果

网站常用效果之一,以下为简化版,用于学习javascript基础知识。

效果图:

accordion手风琴效果 - 纯js简化版

?





1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

<html>

<head>

<meta http-equiv="Content-Type"
content="text/html; charset=utf-8">

<title>accordion手风琴效果 - 纯js简化版</title>

<style type="text/css">

*{margin: 0; padding: 0;}

#acclist {list-style: none; width: 400px; margin: 10px; padding: 0;}

#acclist li { background: #ccc; list-style: none; margin: 0 0 1px 0; padding: 0;}

#acclist li h3 {font-size: 13px; color: #fff; background: #666; padding: 5px;cursor:pointer;}

#acclist li div { display: none; padding: 5px; height: 80px;}

</style>

<script type="text/javascript">

window.onload = function() {

    var
acc = document.getElementById(‘acclist‘);

    var
accli = acc.getElementsByTagName(‘li‘);

    for(var
i=0; i<accli.length; i++) {

        accli[i].getElementsByTagName(‘h3‘)[0].index = i;

        accli[i].getElementsByTagName(‘h3‘)[0].onmouseover = function() {

            for(var
a=0; a<accli.length; a++) {

                accli[a].getElementsByTagName(‘div‘)[0].style.display = "none";

            }

            if(accli[this.index].getElementsByTagName(‘div‘)[0].style.display == "block") {

                accli[this.index].getElementsByTagName(‘div‘)[0].style.display = "none";

            } else
{

                accli[this.index].getElementsByTagName(‘div‘)[0].style.display = "block"

            }

        }

    }

    accli[0].getElementsByTagName(‘div‘)[0].style.display = "block";

}

</script>

</head>

<body>

<div>

    <ul id="acclist">

        <li>

            <h3>acctit01</h3>

            <div>accdiv01</div>

        </li>

        <li>

            <h3>acctit02</h3>

            <div>accdiv02</div>

        </li>

        <li>

            <h3>acctit03</h3>

            <div>accdiv03</div>

        </li>

        <li>

            <h3>acctit04</h3>

            <div>accdiv04</div>

        </li>

        <li>

            <h3>acctit05</h3>

            <div>accdiv05</div>

        </li>

        <li>

            <h3>acctit06</h3>

            <div>accdiv06</div>

        </li>

    </ul>

</div>

</body>

</html>

时间: 2024-12-13 01:15:05

WEB前端:06_accordion手风琴效果的相关文章

web前端入门到实战:纯HTML做出几个实用网页效果

在我们以往看到的页面效果中,很多效果是需要JS搭配使用的,而今天在本文中,我将介绍如何使用纯HTML打造属于自己的实用效果. 1.?**折叠手风琴** 使用Details和Summary标签可以创建没有JavaScript代码的可折叠手风琴. 效果: ? HTML <details> <summary>Languages Used</summary> <p>This page was written in HTML and CSS. The CSS was

10个Web前端值得收藏的背景全屏效果展示(附源码)(上)

作为一个前沿的 Web 开发者,对于 HTML5 和 现在流行的3D技术或多或少都有掌握.特别是在移动端大显身手.这篇文章挑选了10个绚丽的背景全景展示效果,希望对你有所帮助. 1.  JS图片背景全屏代码实现物理效果 玩法介绍:可以随意拖动鼠标.按住鼠标左键选中旋转物体.或者按住鼠标滑轮放大或者缩小,有不同的效果,赶紧来体验一下. 源码下载  /  在线演示 2.  CSS3学习 - 网站背景拉伸平铺jQuery插件 这个插件集成了一些非常好的 JavaScript 库,提供一个方便使用的文本

几种非常精美的Web前端标签效果展示(附源码)(上)

1.  Tag标签管理jQuery插件 玩法介绍:可以随意拖动鼠标.按住鼠标左键选中旋转物体.或者按住鼠标滑轮放大或者缩小,有不同的效果,赶紧来体验一下. 源码下载  /  在线演示 2.  jquery标签回车自动完成 这个插件集成了一些非常好的 JavaScript 库,提供一个方便使用的文本动画插件. 源码下载 /  在线演示 几种非常精美的Web前端标签效果展示(附源码)(上)

几种非常精美的Web前端标签效果展示(附源码)(下)

3. jquery自定义添加标签 jquery实现的,会在当鼠标光标移动到接近(或通过)视口(viewport)的顶部的时候触发. 源码下载/   在线演示 4.  jquery标签云无规则样式 能在支持 FireFox.Chrome.Safari.傲游.搜狗.360浏览器. 源码下载/   在线演示 5.  jQuery metro风格的文字标签云 源码下载/  在线演示 几种非常精美的Web前端标签效果展示(附源码)(下)

7个Web前端极其精美的动画效果模板(附源码)

1.  jQuery动态随机背景滚动 源码下载  /  在线演示 2.  jquery animate分页按钮 源码下载 /  在线演示 3. html5+css3日食场景特效 源码下载/   在线演示 4. HTML5小球碰撞叠加 鼠标点击拨弄,能在支持 FireFox.Chrome.Safari.傲游.搜狗.360浏览器. 源码下载/   在线演示 5.  css3实现天气图标 源码下载/  在线演示 6.  css3图片变形特效   源码下载/  在线演示 7. jquery心电图跳动 源

6个绚丽时尚的Web前端3D效果展示(附源码)

作为一个前沿的 Web 开发者,对于 HTML5 和 现在流行的3D技术或多或少都有掌握.前几年这些新技术刚萌芽的时候,开发者们已经使用它们来小试牛刀了,如今这些先进技术已经遍地开发,特别是在移动端大显身手.这篇文章挑选了6个前沿的绚丽的3D展示效果,希望对你有所帮助. 1.  3D自由立体旋转现实物理效果 3D自由立体旋转是一个基于 HTML5 技术的实验,模拟现实物理效果,让你在 Web 中感受自然物体的3D自由立体旋转运动.玩法介绍:可以随意拖动鼠标.按住鼠标左键选中旋转物体.或者按住鼠标

web前端入门到实战:CSS实现平行四边形布局效果

如何实现下图所示的平行四边形布局效果? 一.skewX的局限 一提到平行四边形,条件反射般的就会想起CSS transform中的skew()/skewX()/skewY()方法,可以让元素斜切,从而实现平行四边形效果 HTML如下: <div class="input-x"> <input class="input" placeholder="您的姓名"> </div> CSS如下,形状的关键就是下面红色高亮

web前端入门到实战:css3循环,模拟拼多多动画效果

模拟拼多多动画效果,最终效果图如下: 我们看一下实现过程. 主框架是vue开发,做成了一个动画组件,因为涉及到多个页面引用,最主要的实现是css3语法实现过程,并且要做到循环播放. 左边出来动画时间是0.5秒,停留3秒往上走,然后动画时间0.5秒,停留3秒后然后消失,消失动画时间0.5秒,总共的时间消耗是7.5秒.可以得到以下计算比例 如果大家对编程,web前端感兴趣,想要学习,打算深入了解这个行业的朋友,可以加下我们的前端学习扣qun : 784783012 ,不论你是学生还是想转行的朋友,我

web前端入门到实战:css3实现半圆和圆效果

在css2中,如果需要失效一些圆角或者半圆等等效果,一般是要通过ps等软件来处理的,在CSS3中,则不需要了,只需要通过border-radius就可以实现,大大方便了开发的效率. 无论圆角.圆弧.实心圆.半圆,css3的实现代码都是 border-radius 属性,border-radius 不但可以定义圆半径和圆角大小,还可以画出各种方向的半圆. 代码 <!DOCTYPE html> <html lang="en"> <head> <me