JS鼠标滑过图片时切换图片实现思路


Posted in Javascript onSeptember 12, 2013

在很多网站上我们会发现当鼠标滑过一张图片后,这张图片切换为了另外的一张图片。这里小编说说这是怎么实现的。

在写Javascript代码前我们必须要有实验的HTML代码

<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> 
<title>Jquery deal images</title> 
<script src="./js/jquery.js" type="text/javascript"></script> 
<script type="text/javascript"> 
<!-- 
//这里是JS代码 ,下面豆芽会写上 
//--> 
</script> 
</head> <body> 
<img src="./images/img02.png" /> 
</body> 
</html>

下面来重点分析JS代码
$(document).ready(function(){ 
var newImage = new Image(); //预载入图片 
var oldImage = $('img').attr('src'); 
newImage.src = './images/img03.jpg'; 
$('img').hover(function(){ //鼠标滑过图片切换 
$('img').attr('src',newImage.src); 
}, 
function(){ 
$('img').attr('src',oldImage); 
}); 
});

这里大家迷惑的是为什么要预载入图片呢?因为在网站上不像我们本地调试,图片下载这么快。如果是在互联网上,当鼠标滑过将要切换的图片时,替换的图片还要临时下载,加载图片的过程是比较慢的。所以我们预载入图片可以解决这个问题。
Javascript 相关文章推荐
jQuery效果 slideToggle() 方法(在隐藏和显示之间切换)
Jun 28 Javascript
javascript中键盘事件用法实例分析
Jan 30 Javascript
jQuery实现有动画淡出效果的二级折叠菜单代码
Oct 17 Javascript
详解JS面向对象编程
Jan 24 Javascript
JavaScript获取对象在页面中位置坐标的方法
Feb 03 Javascript
Bootstrap入门书籍之(四)菜单、按钮及导航
Feb 17 Javascript
Vue.js中轻松解决v-for执行出错的三个方案
Jun 09 Javascript
基于zepto.js实现手机相册功能
Jul 11 Javascript
JS正则表达式常见用法实例详解
Jun 19 Javascript
vue学习笔记五:在vue项目里面使用引入公共方法详解
Apr 04 Javascript
vuex存储复杂参数(如对象数组等)刷新数据丢失的解决方法
Nov 05 Javascript
JavaScript onclick事件使用方法详解
May 15 Javascript
jQuery实现图片放大预览实现原理及代码
Sep 12 #Javascript
jquery foreach使用示例
Sep 12 #Javascript
jquery 追加tr和删除tr示例代码
Sep 12 #Javascript
实现只能输入数字的input不用replace方法
Sep 12 #Javascript
jQuery 三击事件实现代码
Sep 11 #Javascript
导航跟随滚动条置顶移动示例代码
Sep 11 #Javascript
查找iframe里元素的方法可传参
Sep 11 #Javascript
You might like
在PHP3中实现SESSION的功能(二)
2006/10/09 PHP
使用CodeIgniter的类库做图片上传
2014/06/12 PHP
PHP实现手机号码中间四位用星号(*)隐藏的自定义函数分享
2014/09/27 PHP
PHP通过内置函数memory_get_usage()获取内存使用情况
2014/11/20 PHP
配置php.ini实现PHP文件上传功能
2014/11/27 PHP
学习php设计模式 php实现策略模式(strategy)
2015/12/07 PHP
PHP使用PDO 连接与连接管理操作实例分析
2020/04/21 PHP
jquery复选框CHECKBOX全选、反选
2008/08/30 Javascript
JavaScript自定义事件介绍
2013/08/29 Javascript
jquery.hotkeys监听键盘按下事件keydown插件
2014/05/11 Javascript
jQuery中end()方法用法实例
2015/01/08 Javascript
jquery实现加载进度条提示效果
2015/11/23 Javascript
angularjs自定义ng-model标签的属性
2016/01/21 Javascript
值得分享和收藏的Bootstrap学习教程
2016/05/12 Javascript
BootStrap入门教程(三)之响应式原理
2016/09/19 Javascript
javascript 分号总结及详细介绍
2016/09/24 Javascript
使用原生的javascript来实现轮播图
2017/02/24 Javascript
vue2.0全局组件之pdf详解
2017/06/26 Javascript
React-native桥接Android原生开发详解
2018/01/17 Javascript
react 实现页面代码分割、按需加载的方法
2018/04/03 Javascript
js实现简单选项卡功能
2020/03/23 Javascript
Vue表单绑定的实例代码(单选按钮,选择框(单选时,多选时,用 v-for 渲染的动态选项)
2019/05/13 Javascript
Node 代理访问的实现
2019/09/19 Javascript
微信小程序表单验证WxValidate的使用
2019/11/27 Javascript
Element Popover 弹出框的使用示例
2020/07/26 Javascript
python 示例分享---逻辑推理编程解决八皇后
2014/07/20 Python
详解Python中open()函数指定文件打开方式的用法
2016/06/04 Python
python中用ctypes模拟点击的实例讲解
2020/11/26 Python
一款纯css3制作的2015年元旦雪人动画特效教程
2014/12/29 HTML / CSS
HTML5实现表单自动验证功能实例代码
2017/01/11 HTML / CSS
武汉英思工程科技有限公司&ndash;ORACLE面试测试题目
2012/04/30 面试题
工作态度检讨书
2014/02/11 职场文书
党的群众路线教育实践活动个人对照检查材料范文
2014/09/25 职场文书
2015年元旦主持词结束语
2014/12/14 职场文书
扬州个园导游词
2015/02/06 职场文书
关于springboot配置druid数据源不生效问题(踩坑记)
2021/09/25 Java/Android