静态网页第五讲

 
### JavaScript的效果演示
 
利用一个点灯的程序来介绍今天的内容
代码5.1: 点灯程序
 
### JavaScript的起源
 
在JavaScript出现之前,Web浏览器不过是一种能够显示超文本文档的简单软件。而在JavaScript出现之后,网页的内容不再局限于枯燥的文本,它们的可交互性得到了显著的改善。
 
JavaScript是Netscape Navigator公司和Sun公司合作开发的,这个语言刚发布时,Netscape Navigator(网景)主宰浏览器的市场。微软用IE浏览器和网景竞争,面对竞争,网景和Sun联合了ECMA(欧洲计算机制造商协会)对JavaScript进行了标准化,所以ECMAScript就是JavaScript的另一个名字。(后来网景浏览器市场被微软抢占了,那就是另外一个故事了。)
 
这里需要注意的是,JavaScript和Java是两种完全不一样的语言,JavaScript比Java简单很多。
 
### JavaScript的三种引入方式
 
比较差的引入方式
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <title>HTML5 Template</title>
    <script>
       //JavaScript就放在这里      
    </script>
</head>
<body>
</body>
</html>
 
 
比较好的引入方式
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <title>HTML5 Template</title>
    <script src="file.js"></script>
</head>
<body>
</body>
</html>
 
 
最好的引入方式,这种方式可以让浏览器更快地加载页面
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <title>HTML5 Template</title>
</head>
<body>
<!--这里是HTML元素-->
<script src="file.js"></script>
</body>
</html>
 
 
### JavaScript的语法
 
(这里我不会讲,因为我介绍完语法之后,这节课就没了,所以我会直接放一些简单的小例子,因为JavaScript的语法和C语言的差不多)
 
 
### DOM元素
 
(这个概念昨天我们上课已经讲过了,这里我也不再重复讲)
 
### JavaScript五个常用DOM方法
  • getElementById
  • getElementByTagName
  • getElementsByClassName
  • getAttribute
  • setAttribute
 
    其中获取元素的方法有三种
  • getElementById
  • getElementsByTagName
  • getElementsByClassName
 
    代码5.2 演示getElementById
    代码5.3 演示getElementByTagName(返回的是一个数组)
    代码5.4 演示getElementsByClassName (返回的是一个数组)
 
 
    getAttribute与之前的那三个函数不同,它不属于document对象,所以不能通过document对象调用。它只能通过元素节点对象调用。它需要结合document对象使用。
    代码5.5 演示getAttribute
 
    setAttribute是用来修改属性节点的。它也是通过元素节点调用的。
    代码5.6 演示setAttribute
 
### JavaScript的应用案例:图片库(从简单到复杂)
 
    代码5.7.1 规划布局一
    
    在原有情况的基础上,希望点击链接时,我们不是跳转到其他页面,而是图片会轮流出现。
 
    代码5.7.2 规划布局二,添加一个空白图片的框
 
    想要把空白图片替换为其他图片,我们可以用到setAttribute来改变src的值,
    我们给这个函数取名为ShowPic,函数的参数我们记为whichpic
    即 function ShowPic(whichpic)
 
    whichpic代表着一个元素节点,具体地说,那时一个指向某个图片的<a>元素,我们需要分解出图片的文件路径,可以通过whichpic元素上调用getAttribute得到,只要把“href”传递给getAttribute就可以了
    即 whichpic.getAttribute("href"),然后我们把这个路径存入变量source
    let source = whichpic.getAttribute("href")
 
    接下来,我们还需要获取“空白图片”,这可以用getElementById
    document.getElementById("placeholder")
    这段代码有点长,我们也拿一个变量来保存它
    let place = document.getElementById("placeholder")
 
    现在,我们已经声明并赋值了两个变量:source和place。它们可以让代码更加简单易读。
    我们将使用setAttribute对place元素的src属性进行刷新。
    还记得吗?这个方法有两个参数,一个是属性名,一个是属性的值。具体到这个例子,因为我们将要改变的属性是src,所以属性名是src,属性值则是我们被我们保存到了source里面。
 
    于是代码应该为place.setAttribute("src", source);
 
    整体下来函数应该为:
    
function showPic(whichpic) {
    let source = whichpic.getAttribute("href");
    let place = document.getElementById("placeholder");
    place.setAttribute("src", source);
}
 
 
    代码5.7.3 规划布局三,把函数应用到代码中
    
    在点击这个函数的同时,我们还会跳转到其他的页面。那么我们能不能不跳转到其他界面呢?
    onclick其实是一个事件函数,当它返回true时,链接才会跳转,返回false时,链接不会跳转。
    可以做一个实验:
 
    代码5.7.4 一个小实验。
 
 
    于是我们可以得到5.7.5 给onclick添加return false之后实现的图片轮换效果
 
 
    
 
        ### 今天的作业:给自己原来的网站添加图片库效果。
 

静态网页第五讲

上一篇:css 权重


下一篇:如何优雅的做数据校验-Hibernate Validator详细使用说明