Maison > interface Web > js tutoriel > Implémentation d'effets d'accordéon simples basés sur jquery_jquery

Implémentation d'effets d'accordéon simples basés sur jquery_jquery

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Libérer: 2016-05-16 15:30:01
original
1331 Les gens l'ont consulté

L'effet accordéon est un effet fréquemment utilisé dans les projets. L'exemple J de cet article vous parlera de l'implémentation jquery d'un code d'effets spéciaux accordéon simple. Partagez-le avec tout le monde pour votre référence. Les détails sont les suivants :
La capture d'écran de l'effet en cours d'exécution est la suivante :

Le code spécifique est le suivant :

style CSS

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

/* CSS Document */

body {

  margin: 0 auto;

  padding: 0 auto;

  font-size: 9pt;

  font-family: 微软雅黑, 宋体, Arial, Helvetica, Verdana, sans-serif;

}

.accordion {

  padding-left: 0px;

}

.accordion li {

  border-top: 1px solid #000;

  list-style-type: none;

}

.titlemenu {

  width: 100%;

  height: 30px;

  background-color: #F2F2F2;

  padding: 5px 0px;

  text-align: left;

  cursor: pointer;

}

.titlemenu img {

  position: relative;

  left: 20px;

  top: 5px;

}

.titlemenu span {

  display: inline-block;

  position: relative;

  left: 40px;

}

.submenu {

  text-align: left;

  width: 100%;

  padding-left: 0px;

}

.submenu li {

  list-style-type: none;

  width: 100%;

}

.submenu li img {

  position: relative;

  left: 20px;

  top: 5px;

}

.submenu li a {

  position: relative;

  left: 40px;

  top: 5px;

  text-decoration: none;

}

.submenu li span {

  display: inline-block;

  height: 30px;

  padding: 5px 0px;

}

.hover {

  background-color: #4A5B79;

}

Copier après la connexion

Js personnalisés

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

(function ($) {

  piano = function () {

    _menu ='[{"title":"一级目录","img":"images/cog.png","submenu":[{"title":"二级目录","img":"images/monitor_window_3d.png"},{"title":"二级目录","img":"images/monitor_window_3d.png"},{"title":"二级目录","img":"images/monitor_window_3d.png"}]},{"title":"一级目录","img":"images/cog.png","submenu":[{"title":"二级目录","img":"images/monitor_window_3d.png"},{"title":"二级目录","img":"images/monitor_window_3d.png"},{"id":"4","title":"二级目录","img":"images/monitor_window_3d.png"}]}]';

    return ep = {

      init: function (obj) {

        _menu = eval('(' + _menu + ')');

         var li ="";

        $.each(_menu, function (index, element) {

          li += '<li><div class="titlemenu"><img src=' + element.img + ' width="16" height="16" alt=""/><span>' + element.title + '</span></div>';

          if(element.submenu!=null)

          {

            li+='<ul class="submenu">';

            $.each(element.submenu, function (ind, ele) {

              li += '<li><img src=' + ele.img + ' width="16" height="16" alt=""/><span><a href="#">' + ele.title + '</a></span></li>';

            });

            li+='</ul>';

          }

          li+='</li>';

        });

        obj.append(li);

      }

    }

  }

 

  $.fn.accordion = function (options) {

    var pia = new piano();

    pia.init($(this));

    return this.each(function () {

      var accs = $(this).children('li');

       accs.each(reset);

      accs.click(onClick);

      var menu_li = $(".submenu").children("li");

      menu_li.each(function (index, element) {

        $(this).mousemove(function (e) {

          $(this).siblings().removeClass("hover");

          $(this).find("a").css("color", "#fff");

          $(this).siblings().find("a").css("color", "#000");

          $(this).addClass("hover");

        });

      });

    });

  }

 

  function onClick() {

    $(this).siblings('li').find("ul").each(hide);

    $(this).find("ul").slideDown('normal');

    return false;

  }

 

  function hide() {

    $(this).slideUp('normal');

  }

 

  function reset() {

    $(this).find("ul").hide();

  }

})(jQuery);

Copier après la connexion

Méthode d'appel HTML

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

<!doctype html>

<html>

<head>

<meta charset="utf-8">

<title>无标题文档</title>

<script src="jquery-1.8.0.min.js"></script>

<link rel="stylesheet" type="text/css" href="style.css">

<script src="accordion.js"></script>

<script type="text/javascript">     

  $(function(){

    $("#accordion").accordion();

  });

</script>

</head>

<body>

<ul id="accordion" class="accordion" style="width:200px;height:500px;">

</ul>

</body>

</html>

Copier après la connexion

J'espère que cet article vous aidera à apprendre la programmation jquery et à devenir plus compétent dans la maîtrise des effets spéciaux d'accordéon. Il y a des articles connexes liés sous l'article.

Étiquettes associées:
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal