轻松实现JavaScript图片切换


Posted in Javascript onJanuary 12, 2016

本文实例为大家介绍JavaScript图片切换的实现方法,分享给大家供大家参考,具体内容如下

效果图:

轻松实现JavaScript图片切换

网页看到非常常见的一个图片切换效果:在淘宝、JD等购物时,介绍产品的图片会有多张,一般是显示一张,底下有一排小图片,鼠标放到小图片上大图片会切换.参考vivo X5M 移动4G手机 .下面记录一下实现的过程.

1. getElementById()

该方法是操作dom非常常用的一个方法,比如有一p标签,id设为pid,通过getElementById(“pid”)就可以对该元素进行操作.

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>demo</title>
  <script type="text/javascript">
    function changeText(){
      document.getElementById("pid").innerHTML
      ="It works!";
    }
  </script>
</head>
<body>
  <p id="pid" onmouseover="changeText()">Hello word!</p>
</body>
</html>

上面代码中在body中写了一个p标签,id为pid,当鼠标放到p标签上方的时候触发onmouseover事件,执行changeText()方法,将p标签内的文档改变.

2. setAttribute()和getAttribute()

getAttribute()方法用于获取某一属性的值,setAttribute()方法用于给某一属性赋值。

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>demo</title>
  <script type="text/javascript">
    function changeUrl(){
      var baiduurl=document.getElementById("aid");
      baiduurl.getAttribute("href");
      baiduurl.setAttribute("href", 
      "http://www.taobao.com");
      baiduurl.innerHTML="淘宝";
    }
  </script>
</head>
<body>
  <a href="http://www.baidu.com" id="aid" onmouseover="changeUrl()">百度首页</a>
</body>
</html>

上面代码中,body中有一个a标签,通过getElementById()获取a标签,baiduurl.getAttribute(“href”)的值为默认的href属性,通过baiduurl.setAttribute(“href”, “http://www.taobao.com“)设置以后,该属性值改变.完整代码:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>on</title>
  <style type="text/css" media="screen">
  *{
     padding: 0;
  }
  body{
     font-family: 微软雅黑;
  }
  #imgbox{
        width: 320px;
        height: 490px;
        padding: 10px;
        box-shadow: 5px;
        border: 1px solid #ccc;
        border-radius: 10px;
      }
 #phoneimg{
       padding: 10px;
       border-color: 1px solid #cccccc;
    }

  </style>


</head>
<body>
   <div id="imgbox">
    <img src="images/phone1.jpg" height="400" width="320" alt="phone" id="phoneimg">   
    <p id="decimg">phone image1</p>
   </div>

   <table>
    <tbody>
      <tr>
        <td width="50px">
          <img src="images/phone2.jpg" height="100" width="80" title="phone image2" alt="" onmouseover="changeImg(this)" ></td>
        <td width="50px">
          <img src="images/phone3.jpg" height="100" width="80" title="phone image3" alt=""onmouseover="changeImg(this)" ></td>
        <td width="50px">
          <img src="images/phone4.jpg" height="100" width="80" title="phone image4" alt=""onmouseover="changeImg(this)" ></td>
        <td width="50px">
          <img src="images/phone5.jpg" height="100" width="80" title="phone image5" alt=""onmouseover="changeImg(this)" ></td>

      </tr>
    </tbody>
   </table>

   <script type="text/javascript">
     function changeImg(whichpic){       
         var imgattr=whichpic.getAttribute("src");
         var phoneimg=document.getElementById("phoneimg");
         phoneimg.setAttribute("src",imgattr);
         var dectext=whichpic.getAttribute("title");
         document.getElementById("decimg").innerHTML=dectext;
     }
   </script>
</body>
</html>

下一步学习一下怎么实现局部放大,大家有什么好的方法吗?可以一起探讨。

Javascript 相关文章推荐
用JavaScript计算在UTF-8下存储字符串占用字节数
Aug 08 Javascript
现如今最流行的JavaScript代码规范
Mar 08 Javascript
jQuery的$.proxy()应用示例介绍
Apr 03 Javascript
Javascript实现检测客户端类型代码封包
Dec 03 Javascript
Bootstrap每天必学之级联下拉菜单
Mar 27 Javascript
JS &amp; JQuery 动态添加 select option
Jun 08 Javascript
JS实现数组的增删改查操作示例
Aug 29 Javascript
Vue异步组件处理路由组件加载状态的解决方案
Sep 07 Javascript
详解小程序云开发攻略(解决最棘手的问题)
Sep 30 Javascript
微信小程序获取当前位置和城市名
Nov 13 Javascript
js实现蒙版效果
Jan 11 Javascript
vue route新窗口跳转页面并且携带与接收参数
Apr 10 Vue.js
jQuery动画效果图片轮播特效
Jan 12 #Javascript
jQuery动画效果实现图片无缝连续滚动
Jan 12 #Javascript
jqueryMobile使用示例分享
Jan 12 #Javascript
WordPress中鼠标悬停显示和隐藏评论及引用按钮的实现
Jan 12 #Javascript
WordPress中利用AJAX技术进行评论提交的实现示例
Jan 12 #Javascript
基于JavaScript实现div层跟随滚动条滑动
Jan 12 #Javascript
JavaScript继承模式粗探
Jan 12 #Javascript
You might like
PHP版本如何选择?应该使用哪个版本?
2015/05/13 PHP
教大家制作简单的php日历
2015/11/17 PHP
Yii框架批量插入数据扩展类的简单实现方法
2017/05/23 PHP
php实现用户注册密码的crypt加密
2017/06/08 PHP
php使用gearman进行任务分发操作实例详解
2020/02/26 PHP
php设计模式之代理模式分析【星际争霸游戏案例】
2020/03/23 PHP
控制页面按钮在后台执行期间不重复提交的JS方法
2013/06/24 Javascript
JavaScript排序算法之希尔排序的2个实例
2014/04/04 Javascript
推荐25个超炫的jQuery网格插件
2014/11/28 Javascript
JQuery鼠标移到小图显示大图效果的方法
2015/06/10 Javascript
JavaScript中的Promise使用详解
2015/06/24 Javascript
jquery实现的蓝色二级导航条效果代码
2015/08/24 Javascript
js和jquery实现监听键盘事件示例代码
2020/06/24 Javascript
原生javascript实现解析XML文档与字符串
2016/03/01 Javascript
Jquery跨域获得Json的简单实例
2016/05/18 Javascript
AngularJS入门教程之与服务器(Ajax)交互操作示例【附完整demo源码下载】
2016/11/02 Javascript
详解React-Todos入门例子
2016/11/08 Javascript
Angular学习笔记之angular的$filter服务浅析
2016/11/12 Javascript
jquery 删除节点 添加节点 找兄弟节点的简单实现
2016/12/07 Javascript
Bootstrap源码解读排版(1)
2016/12/23 Javascript
bootstrap导航条实现代码
2016/12/28 Javascript
详解JavaScript添加给定的标签选项
2018/09/17 Javascript
Bootstrap4 gulp 配置详解
2019/01/06 Javascript
node crawler如何添加promise支持
2020/02/01 Javascript
vue2.x数组劫持原理的实现
2020/04/19 Javascript
[02:28]DOTA2英雄基础教程 狼人
2013/12/23 DOTA
Python  pip安装lxml出错的问题解决办法
2017/02/10 Python
Python中利用xpath解析HTML的方法
2018/05/14 Python
带有css3动画效果的兼容多浏览器简单导航条示例
2014/01/26 HTML / CSS
伊利莎白雅顿官网:Elizabeth Arden
2016/10/10 全球购物
关于VPN
2012/06/10 面试题
会计员岗位职责
2014/03/15 职场文书
公司副总经理任命书
2014/06/05 职场文书
家庭贫困证明范本(经典版)
2014/09/22 职场文书
2015年专项整治工作总结
2015/04/03 职场文书
爱心捐款活动总结
2015/05/09 职场文书