JavaScript基础知识整理(2)
15、处理图像
注意:(1)在写js文件时,尽量将函数的声明往后写,将函数调用写在前面,这样能够使代码结构很清晰。
(2)一个网页中翻转器一般超过3个,所以使用for循环减少重复使用翻转器代码的次数。
由于还在学习中,JavaScript部分和所用书籍《JavaScript基础教程》中的代码非常相似,所以不粘贴JavaScript代码,只进行简单的描述:
(1) 定义一个函数,此函数有两个参数,一个是链接,一个是图像,此函数能够实现的功能:当鼠标移到链接上时,图片发生相应的变化。
给链接参数添加onmouseover方法,该方法用于当鼠标在链接上方时,改变图像的路径。
链接的class名称和图像的id名相同,链接和图像通过getElementById(theLink.className)联系起来。
链接的id名与对应图像的名称相同,将包含theLink.id的路径赋值给需要改变的图像的src达到显示不同图片的效果。
(2) 定义当前链接和要使其发生变化的图像这两个变量,以这两个变量为实参,调用1中函数。
一开始我直接在Chrome中点击F12进行检错,在Console部分看见报错为:js文件的第13行出了一个错误:意外的记号{

但是仔细查看代码后发现所有的{ 都是成双成对的,搞不懂它为什么错了。于是我准备下载一个比较好的代码分析工具JSHint。
在使用JSHint前必须先安装好Node.js,
Node.js安装步骤:http://jingyan.baidu.com/article/b0b63dbfca599a4a483070a5.html#!/home/homepage
JSHint配置:http://m.jb51.net/article/50453.htm
使用JSHint检查出来的错误为:

显示imgObj这个变量使用超出了范围,以及缺少分号这两种错误。
仔细检查该部分内容后发现是在使用另一个变量时把该变量的名称打错了,解决了“imgObj变量的使用超出了范围”这个问题;
又仔细检查后发现在定义函数的部分忘了写上 function ,解决了“缺少分号”的问题。
(在使用cd该变路径的过程中,老是出现文件名、目录名或卷标语法不正确这样的报错,我把路径中的文件全部改成了英语单词,也把各个盘的卷标全改成了英语单词,但是还是没用,只好就在C盘里的建好的App文件里使用JSHint检查.js文件,无错之后再粘贴到别处。)
最终的效果如下:

当鼠标在链接上方时,会显示对应的图片。
html代码:
<!DOCTYPE html>
<head>
<script src="rollover.js"></script>
<link rel="stylesheet" href="rollover.css">
</head>
<body>
<ul>
<li><a href="wind.html" class="image" id="wind">风<a></li>
<li><a href="rain.html" class="image" id="rain">雨<a></li>
<li><a href="fearl.html" class="image" id="fearl">无<a></li>
<li><a href="difficu.html" class="image" id="difficu">阻<a></li>
</ul>
<img src="data:images/default.png" id="image" alt="风雨无阻">
</body>
</html>
CSS代码:
body{
margin:0 auto;
margin-top:60px;
width:1006px;
height:600px;
}
ul{
position:absolute;
z-index:;
float:left;
list-style:none;
padding-top:150px;
}
.img{
position:absolute;
z-index:;
float:left;
}
a{
text-decoration:none;
font-size:30px;
}
a:hover{
color:white;
}
ps:其中所用图片来源于网络。
JavaScript基础知识整理(2)的更多相关文章
- JavaScript基础知识整理
只整理基础知识中关键技术,旨在系统性的学习和备忘. 1.在 JScript 中 null 和 undefined 的主要区别是 null 的操作象数字 0,而 undefined 的操作象特殊值NaN ...
- Javascript 基础知识整理
Javascript的作用 表单验证,减轻服务器压力 添加页面动画效果 动态更改页面内容 Ajax网络请求(异步加载数据) -它属于前端的核心,主要用来控制和重新调整DOM,通过修改DOM结构,从而达 ...
- JavaScript基础知识整理(1)
粗略理解,努力入门中 1.在html中引入外部脚本: <script src="filename.js"></script> 2.注释: 多于一行的长注 ...
- JavaScript基础知识整理(1)数组
第一:创建. 1,var arr= new Array(); //数组为空.长度为0. arr[0]="apple"; arr[1]="orange"; arr ...
- javascript基础知识整理(不定时更新)
1.js中真与假的定义: 真:true,非零数字,非空字符串,非空对象 假:false,数字零,空字符串,空对象(null),undefined 2.使用for循环对json进行循环操作 for(va ...
- Kali Linux渗透基础知识整理(二)漏洞扫描
Kali Linux渗透基础知识整理系列文章回顾 漏洞扫描 网络流量 Nmap Hping3 Nessus whatweb DirBuster joomscan WPScan 网络流量 网络流量就是网 ...
- Javascript基础知识总结一
Javascript基础知识总结一 <!DOCTYPE html> <html> <head lang="en"> <meta chars ...
- Kali Linux渗透基础知识整理(四):维持访问
Kali Linux渗透基础知识整理系列文章回顾 维持访问 在获得了目标系统的访问权之后,攻击者需要进一步维持这一访问权限.使用木马程序.后门程序和rootkit来达到这一目的.维持访问是一种艺术形式 ...
- 学习javascript基础知识系列第二节 - this用法
通过一段代码学习javascript基础知识系列 第二节 - this用法 this是面向对象语言中的一个重要概念,在JAVA,C#等大型语言中,this固定指向运行时的当前对象.但是在javascr ...
随机推荐
- oracle驱动问题
转载 http://sosuny.iteye.com/blog/806390
- bootstrap源码分析----栅格系统
Bootstrap 提供了一套响应式.移动设备优先的流式栅格系统,随着屏幕或视口(viewport)尺寸的增加,系统会自动分为最多12列. bootstrap通过媒体查询解决不同分辨率屏幕下,页面主内 ...
- Quartz.NET作业调度框架详解(转)
Quartz.NET是一个开源的作业调度框架,是OpenSymphony 的 Quartz API的.NET移植,它用C#写成,可用于winform和asp.net应用中.它提供了巨大的灵活性而不牺牲 ...
- GsonUtils.getGson().fromJson() 转泛型集合
List<QiTaFree> qiTaFreeList = GsonUtils.getGson().fromJson(exhiMain.getQiTaFressJson(), new Ty ...
- @UniqueConstraint
jedis UniqueConstraint定义在Table或SecondaryTable元数据里,用来指定建表时需要建唯一约束的列. 元数据属性说明: columnNames:定义一个字符串数组,指 ...
- How do I remove javascript validation from my eclipse project?
Right click your project Select Properties -> JavaScript -> Include Select Source tab (It look ...
- 搭载在webstorm上的go语言开发插件安装
1. 2.搜索框内搜索go,单击“Browse repositories... ”没有匹配结果(因本人已安装好插件,所以go已经显示在上面了) 3.单击"Manage repositorie ...
- All About Python
Part one: Learn the Basics Hello, World! print "Hello,World!" Variables and Types Python i ...
- QML引擎的演进,第一部分
原文链接:Lars Knoll – Evolution of the QML engine, part 1 QML作为一项技术对于Qt的成功变得越来越重要.它允许创建流畅的动画界面,与现今的市场预期相 ...
- (转载)iOS 极光推送SDK 集成指南
iOS SDK 集成指南 使用提示 本文匹配的 SDK版本:r1.2.5 以后. 查看最近更新了解最新的SDK更新情况. 产品功能说明 极光推送(JPush)是一个端到端的推送服务,使得服务器端消息能 ...