一、初探JavaScript魅力

基本知识:

JavaScript是什么

网页特效原理

  -JavaScript就是修改样式

编写JS流程

  - 布局:HTML + CSS

  - 属性:确定修改哪些属性

  - 事件:确定用户做哪些操作(产品设计)

  - 编写js:在事件中,用js来修改页面元素样式

(小注:html + css 是静态页面,html + css + js 是动态页面;实际上,js就是给网页添加了一些交互或是一些功能。)


案例:我的第一个js特效——鼠标提示框

分析效果实现原理:

  - 样式:Div的display

  - 事件:onmouseover/onmouseout

特效基础:

  - 事件驱动:onmouseover

  - 元素操作属性:obj.style.[.....]

  - 特效实现原理概括:响应用户操作、对页面元素(标签)进行某种修改

(小注:事件指的是用户操作,如onclick、onmouseover、onmouseout)

<!DOCTYPE html>

<html lang = "en">

<head>

  <meta charset = "utf-8">

  <title>我的第一个js特效——鼠标提示框</title>

  <style>

    div{width:200px; height:200px; background:#edf1f2; display:none;}

  </style>

</head>

<body>

<input type = "checkbox"  onmouseover = "document.getElementById('div1').style.display = 'block';" onmouseout = "document.getElementById('div1').style.display = 'none';"/>

<div id = "div1">

这是我的第一js特效哦~

</div>

</body>

</html>


初识函数

制作更复杂的效果(Div的颜色、大小都变化)

直接在事件内写代码会很乱

  - 引入function()、函数的基本形式

  - 把js从标签里放到函数里,类似css中的class

  - 变量的使用——标识符(别名)

定义和调用:

  -函数的定义:只是告诉系统有这个函数,并不会实际执行

  - 函数调用:真正执行函数里的代码

(小注:注意代码的重用)

案例:Div的颜色、大小、透明度都变化 

js

function toGreen(){

var oDiv = document.getElementById("div1");

oDiv.style.width = "300px";

oDiv.style.height = "300px";

oDiv.style.background = "green";

oDiv.style.opacity = .3;

}

function toYellow(){

var oDiv = document.getElementById("div1");

oDiv.style.width = "200px";

oDiv.style.height = "200px";

oDiv.style.background = "yellow";

oDiv.style.opacity = 1;

}

css

div{width:200px; height:200px; background:yellow; opacity:1}

html

<div id = "div1" onmouseover = "toGreen()" onmouseout = "toYellow()"></div>

最新文章

  1. 我的2013 Q.E.D
  2. python爬取网易评论
  3. Storm与Spark Streaming比较
  4. MySQL用法
  5. DataGridView 的单元格的边框、 网格线样式的设定【转】
  6. ubuntu下查看环境变量
  7. 误删ext3的恢复方法
  8. ASCII 码表
  9. Python之格式化输出讲解
  10. 树-二叉平衡树AVL
  11. linux点滴:NFS
  12. hadoop中的分布式缓存——DistributedCache
  13. [刷机教程] 三星Note8 N5100不卡屏的唯一解决办法--落雨刷机教程
  14. Android抓包工具Fiddler抓取数据
  15. php获取文章内容中的全部图片数组
  16. X-008 FriendlyARM tiny4412 uboot移植之copy u-boot到DDR内存
  17. JS取消浏览器文本选中的方法
  18. Jenkins集成源码静态分析工具
  19. bzoj3437小P的牧场 斜率优化dp
  20. SpriteBuilder中节点位置类型为百分比时不能定位的解决

热门文章

  1. Android之布局属性归纳
  2. Fiddler实现手机抓包——小白入门 - 做一个不动声色的大人
  3. Maven结构下 properties 读取
  4. Opengl编程指南第二章:状态管理、几何绘图
  5. 文艺青年、普通青年、2b青年到底是什么意思?
  6. 160316、实时处理oracle数据库中表的数据变化
  7. HDU5667—Sequence(对数转化)
  8. SQL Server 常用分页SQL(转)
  9. Zipline入门教程
  10. Yii框架2.0的安装过程