浅谈JavaScript_DOM学习篇_图片切换小案例


Posted in Javascript onMarch 19, 2019

今天开始学习DOM操作,下面写一个小案例来巩固下知识点.

DOM: document object model (文档对象模型)

根据id获取页面元素 : 如: var xx = document.getElementById("id");

根据标签获取元素: 如: var xx = document.getElementsByTagName("div");

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
  <style>
    * {
      margin: 0;
      padding: 0;
    }

    #outer {
      width: 500px;
      /*设置上边距50px 水平居中*/
      margin: 50px auto;
      /*设置边框*/
      padding: 10px;
      background-color: greenyellow;
      /*设置文本居中*/
      text-align: center;
    }

    img {
      width: 500px;
    }
  </style>


  <script>

 //btn 为按钮id  clickEventFunction 为点击后执行的操作函数
    function addClick(btn, clickEventFunction) {
      var myButton = document.getElementById(btn);
      myButton.onclick = clickEventFunction;
    };

    window.onload = function () {
      (function () {
        var pics = ["imgs/1.png",
          "imgs/2.png",
          "imgs/3.png"];
        var index = 0;
        showPicNum(index);
        var img = document.getElementsByTagName("img")[0];

        // var btn1 = document.getElementById("btn1");
        var btn2 = document.getElementById("btn2");
        addClick("btn1", function () {
          index--;
          if (index <= -1) {
            index = pics.length - 1;
          }
          console.log(index + " ----- ");
          img.src = pics[index];
          showPicNum(index);
        });
        addClick("btn2", function () {
          index++;
          if (index >= pics.length) {
            index = 0;
          }
          console.log(index + " ++++++++ ");
          img.src = pics[index];
          showPicNum(index);
        });

        //
        // btn1.onclick = function () {
        //   index --;
        //   if(index <= -1){
        //     index = pics.length - 1;
        //   }
        //   console.log(index + " ----- ");
        //   img.src = pics[index];
        //   showPicNum(index);
        // };
        // btn2.onclick = function () {
        //   index ++;
        //   if(index >= pics.length){
        //     index = 0;
        //   }
        //   console.log(index + " ++++++++ ");
        //   img.src = pics[index];
        //   showPicNum(index);
        // };
        console.log(index);

        /**
         * 展示当前图片为第几张
         * @param index  当前图片索引
         */
        function showPicNum(index) {
          var descrs = document.getElementById("discs");
          descrs.innerText = "一共" + pics.length + "张图片,当前第" + ++index + "张";
        }
      }())
    };
  </script>
</head>
<body>
<div id="outer">
  <p id="discs"></p>
  <img src="imgs/1.png"/><br>
  <button id="btn1" type="button" value="上一张">上一张</button>
  <button id="btn2" type="button" value="下一张">下一张</button>
</div>
</body>
</html>

文档目录:

浅谈JavaScript_DOM学习篇_图片切换小案例

效果如下:

浅谈JavaScript_DOM学习篇_图片切换小案例

以上所述是小编给大家介绍的JavaScriptDOM图片切换小案例详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
Add Formatted Data to a Spreadsheet
Jun 12 Javascript
js实现图片轮换效果代码
Apr 16 Javascript
Jquery动态改变图片IMG的src地址示例
Jun 25 Javascript
JavaScript Date对象详解
Mar 01 Javascript
一个仿微博登陆邮箱提示框js开发案例
Jul 28 Javascript
react.js 翻页插件实例代码
Jan 19 Javascript
vue-quill-editor实现图片上传功能
Aug 08 Javascript
浅谈JS 数字和字符串之间相互转化的纠纷
Oct 20 Javascript
常用的 JS 排序算法 整理版
Apr 05 Javascript
vue draggable resizable 实现可拖拽缩放的组件功能
Jul 15 Javascript
js脚本中执行java后台代码方法解析
Oct 11 Javascript
JavaScript数组排序小程序实现解析
Jan 13 Javascript
vue多层嵌套路由实例分析
Mar 19 #Javascript
vue组件数据传递、父子组件数据获取,slot,router路由功能示例
Mar 19 #Javascript
vue项目移动端实现ip输入框问题
Mar 19 #Javascript
详解使用React.memo()来优化函数组件的性能
Mar 19 #Javascript
vue组件定义,全局、局部组件,配合模板及动态组件功能示例
Mar 19 #Javascript
express.js中间件说明详解
Mar 19 #Javascript
js array数组对象操作方法汇总
Mar 18 #Javascript
You might like
浅谈Coreseek、Sphinx-for-chinaese、Sphinx+Scws的区别
2016/12/15 PHP
laravel自定义分页效果
2017/07/23 PHP
PHP实现使用DOM将XML数据存入数组的方法示例
2017/09/27 PHP
PHP PDO和消息队列的个人理解与应用实例分析
2019/11/25 PHP
jquery tools之tooltip
2009/07/25 Javascript
密码框显示提示文字jquery示例
2013/08/29 Javascript
JavaScript替换当前页面的方法
2015/04/03 Javascript
NodeJs中的VM模块详解
2015/05/06 NodeJs
JS中使用apply方法通过不同数量的参数调用函数的方法
2016/05/31 Javascript
全面介绍javascript实用技巧及单竖杠
2016/07/18 Javascript
AngularJS入门教程之 XMLHttpRequest实例讲解
2016/07/27 Javascript
vue 2.0组件与v-model详解
2017/03/27 Javascript
Vue分页组件实例代码
2017/04/17 Javascript
ReactNative Image组件使用详解
2017/08/07 Javascript
详解express与koa中间件模式对比
2017/08/07 Javascript
react实现换肤功能的示例代码
2018/08/14 Javascript
解决vue中修改了数据但视图无法更新的情况
2018/08/27 Javascript
layui动态绑定事件的方法
2019/09/20 Javascript
JS实现基本的网页计算器功能示例
2020/01/16 Javascript
Vue全局使用less样式,组件使用全局样式文件中定义的变量操作
2020/10/21 Javascript
vue实现禁止浏览器记住密码功能的示例代码
2021/02/03 Vue.js
python动态加载变量示例分享
2014/02/17 Python
python通过正则查找微博@(at)用户的方法
2015/03/13 Python
通过数据库对Django进行删除字段和删除模型的操作
2015/07/21 Python
深入理解Python单元测试unittest的使用示例
2017/11/18 Python
Python3生成手写体数字方法
2018/01/30 Python
python如何爬取网站数据并进行数据可视化
2019/07/08 Python
Tensorflow的常用矩阵生成方式
2020/01/04 Python
python字典通过值反查键的实现(简洁写法)
2020/09/30 Python
基于css3 animate制作绚丽的动画效果
2015/11/24 HTML / CSS
英国殿堂级有机护肤品牌:Rodial
2017/04/17 全球购物
门前三包责任书
2014/04/15 职场文书
领导干部遵守党的政治纪律情况思想汇报
2014/09/14 职场文书
2014年教育工作总结
2014/11/26 职场文书
初中语文教学研修日志
2015/11/13 职场文书
《蚂蚁和蝈蝈》教学反思
2016/02/22 职场文书