美文网首页
Fe-12 dom&轮播图

Fe-12 dom&轮播图

作者: 吕阳 | 来源:发表于2018-01-07 04:58 被阅读20次

Fe-12-1

Fe-12-2 toggle

Toggle

  • 效果:


    toggle.gif
  • toggle.html
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>toggle</title>
  <style>
      .gua-hide {
          display: none;
      }
      .gua-menu-content {
          height: 100px;
          border: 1px solid red;
      }
      .gua-item {
          /*display: inline-block;*/
          /*opacity: 0.6;*/
          filter: grayscale(100%)
      }
      .gua-item.gua-highlight {
          filter: initial;
          /*opacity: 1;*/
      }


  </style>
</head>
<body>
  <!-- 1, 点击显示的菜单 -->
  <div class="gua-1">
      <div class="gua-menu">
          <button class="gua-menu-toggle">点击展开详情</button>
          <div class="gua-menu-content">
              详情
          </div>
      </div>
      <div class="gua-menu">
          <button class="gua-menu-toggle">点击展开详情</button>
          <div class="gua-menu-content">
              详情
          </div>
      </div>
  </div>
  <script src=toggle.js></script>
</body>
</html>


  • toggle.js
var log = function() {
    console.log.apply(console, arguments)
}


var e = function(selector) {
    return document.querySelector(selector)
}


var bindEvent = function(element, eventName, callback) {
    element.addEventListener(eventName, callback)
}


var toggleClass = function(element, className) {
    if (element.classList.contains(className)) {
        element.classList.remove(className)
    } else {
        element.classList.add(className)
    }
}


var bindAll = function(selector, eventName, callback) {
    var elements = document.querySelectorAll(selector)
    for(var i = 0; i < elements.length; i++) {
        var e = elements[i]
        bindEvent(e, eventName, callback)
    }
}


// find 函数可以查找 element 的所有子元素
var find = function(element, selector) {
    return element.querySelector(selector)
}


var bindEventToggles = function() {
    var selector = '.gua-menu-toggle'
    bindAll(selector, 'click', function(event){
        log('click button')
        // 找到自己这个菜单的 gua-menu-content
        var p = event.target.parentElement
        var c = find(p, '.gua-menu-content')
        // 开关 gua-hide class
        toggleClass(c, 'gua-hide')
    })
}


bindEventToggles()


相关文章

  • Fe-12 dom&轮播图

    Fe-12-1 Fe-12-2 toggle Toggle 效果:toggle.gif toggle.html t...

  • 无标题文章

    轮播图分为:传统轮播图、间歇轮播图、呼吸轮播图、无缝滚动轮播图等。它们各具特色,各有用处。 1.传统轮播图 第一步...

  • 轮播图

    轮播图分为:传统轮播图、间歇轮播图、呼吸轮播图、无缝滚动轮播图等。 1.传统轮播图 第一步,得到元素 第二步,设置...

  • 现金红包

    每日红包 轮播图 详情图 周末红包 轮播图 详情图 圣诞红包 轮播图 详情图

  • day7_作业

    轮播图1 轮播图2

  • [iOS]定制性强的广告轮播图--SCAdView

    @[无限轮播图] @[3D轮播图] @[广告轮播图] SCAdView Statement If my code ...

  • 普通奖品

    卡西欧小方块 轮播图 详情图 三只松鼠大礼包 轮播图 详情图 天猫精灵 轮播图 详情图 小米蓝牙无线耳机 轮播图 ...

  • 轮播图心得

    轮播图 写轮播图之前我们要认识到几个问题:一、什么是轮播图?二、怎么实现轮播效果?三、轮播图还有什么小功能可以实现...

  • 第五周学习内容

    焦点图轮播特效之原理、焦点图轮播样式之布局、焦点图轮播之箭头切换、焦点图轮播之无限滚动。 js简介、用法、输出。

  • 三种样式的轮播图

    一、100%比例轮播图 HTML代码 CSS样式 js代码 二、手动箭头轮播图 三、简易轮播图

网友评论

      本文标题:Fe-12 dom&轮播图

      本文链接:https://www.haomeiwen.com/subject/jaaunxtx.html