JavaScript零基础学习系列五
定时器
1.定时器:设定时间,在指定的时间之后执行函数或者是程序
a.反复性定时器:var dingshiqi=Window.setInterval(“函数名()”,时间n[毫秒值]);在每隔定的时间n就会执行一次函数,反复执行
b.一次性定时器:var dingshiqi=window.setTimeout(“函数名()”,时间n[毫秒值]);在指定的时间n毫秒之后执行一次函数,执行以后不在执行
2.清除定时器:让定时器不再执行
a.清除反复性定时器:Window.clearInterval(dingshiqi);
b.清除一次性定时器:window.clearTimeout(dingshiqi);
案例:
星星案例
星星案例修改
案例分享
图片的切换:轮播图经典案例。
DOM树
Document Object Model:文档对象模型
- D:documnet,文档,html文档或者xml文档
- O:object,对象,在转成树模型的时候,得到的对象,它有相应的属性和方法,利用他们可以完成任何操作。
- M:model,模型,树模型,有节点构成的一颗树。节点(元素、属性和文本)转成对象。
DOM的分类 - 核心DOM:提供了操作HTML文档(显示)或XML文档(存储数据)的公共的属性和方法。
- HTMLDOM:针对HTML文档,提供的专有的属性和方法。
- XMLDOM:针对XML文档,提供的专有的属性和方法。
- EventDOM:事件DOM,提供了很多的常用事件。
- CSSDOM:提供了操作CSS的一个接口。
HTML节点树:
DOM中节点的类型:
- document文档节点:代表整个网页,document文档节点不对应标记。是访问文档中各元素的起点。
- element元素节点:元素节点对应于网页中的各标记。
- attribute属性节点:每个元素都有若干个属性。
- text文本节点:文本节点是最底层节点。
核心DOM公共属性和方法 - nodeName:节点名称。
- nodeValue:节点的值。
- firstChild:第一个子节点。
- lastChild:最后一个子节点。
- parentNode:父节点。
- childNodes:子节点列表,是一个数组。
查找html节点的方法 - document.firstChild
- document.documentElement(兼容性较好)
查找body节点的方法 - document.firstChild.lastChild
- document.body(推荐使用)
在核心DOM中,已经可以实现对网页元素的操作了,为什么还要有HTMLDOM呢?
因为,核心DOM中,对节点的访问,都是从根节点开始的,访问方式十分麻烦。特别是当节点层次很深时,更是麻烦。因此,才有了HTMLDOM。
1、HTMLDOM的新特性
- 每一个HTML标记,都对应一个对象。如:
标记,就是一个img对象。
- 每一个HTML标记的属性,与对应的元素对象的属性,一一对应。
- img属性:src、width、height、border、style、title、id、class等。
- 在JS中,img对象属性:src、width、height、border、style、title、id、className等。
HTML DOM访问HTML元素的方法
1、根据元素的id查找对象——document.getElementById(id)
2、根据HTML标签名找对象
- 描述:根据HTML标签名找对象
- 语法:var arr = parentNode.getElementsByTagName(tagName)
- 参数:tagName就是要查找的标签名称,不能带尖括号。parentNode代表上层节点。
- 返回值:返回一个对象数组。
- 举例:ulObj.getElementsByTagName(“li”)
元素对象
offsetWidth:指元素的可见宽度,不含滚动条中的内容。只读属性。不带px单位。
offsetHeight:指元素的可见高度,不含滚动条中的内容。只读属性。不带px单位。
scrollWidth:指元素的总宽度,包含滚动条中的内容。只读属性。不带px单位。
scrollHeight:指元素的总高度,包含滚动条中的内容。只读属性。不带px单位。
scrollTop:当元素出现滚动条时,向下拖动滚动条,内容向上滚动的距离。可读可写属性。不带px单位。如果该元素没有滚动条,则scrollTop的值为0,该值只能是正值。
scrollLeft:与scrollTop描述一样,只是向左滚动的距离。
书序案例
书讯快递
JavaScript零基础学习系列五的更多相关文章
- JavaScript零基础学习系列四
案例分享 对象 具体的东西,在以js的眼光看所有的标签都是标签对象,对象是属性的无序集合. 创建对象有两种方式: 直接量: 构造器:所谓的构造器,其实就是函数,只不过这个函数有些特殊,因为它是用于创建 ...
- JavaScript零基础学习系列一
JavaScript Js分成三大块: ECMAScript:语言本身,是标准,js是它的一个具体实现 BOM:浏览器对象模型 DOM:文档对象模型 ECMAScript有三种具体实现: JavaSc ...
- JavaScript零基础学习系列三
函数 函数:为了完成某个功能而定义的代码的集体.函数是数据类型,只读的对象:函数也是对象:代码的重用.(JavaScript中) 定义语法:function 函数名(形式参数1,形式参数2--){ / ...
- JavaScript零基础学习系列二
条件控制 if(条件){//语句块}如果条件(小括号里面的)满足true.那么才会执行大括号里面的代码,如果条件不满足(false),那么不执行,注意:有可能代码不会执行. 例如: if(3>1 ...
- salesforce 零基础学习(五十二)Trigger使用篇(二)
第十七篇的Trigger用法为通过Handler方式实现Trigger的封装,此种好处是一个Handler对应一个sObject,使本该在Trigger中写的代码分到Handler中,代码更加清晰. ...
- salesforce lightning零基础学习(十五) 公用组件之 获取表字段的Picklist(多语言)
此篇参考:salesforce 零基础学习(六十二)获取sObject中类型为Picklist的field values(含record type) 我们在lightning中在前台会经常碰到获取pi ...
- Python零基础学习系列之二--Python介绍及环境搭建
1-1.Python简介: Python是一种解释型.面向对象.动态数据类型的高级程序设计语言.Python由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年.像P ...
- Community Cloud零基础学习(五)Topic(主题)管理
我们以前讲过 Service Cloud 零基础(三)Knowledge浅谈,我们日常可以看见很多得文章或者帖子,我们可以将其通过data category / group进行管理.但是一个系统中得文 ...
- Python零基础学习系列之三--Python编辑器选择
上一篇文章记录了怎么安装Python环境,同时也成功的在电脑上安装好了Python环境,可以正式开始自己的编程之旅了.但是现在又有头疼的事情,该用什么来写Python程序呢,该用什么来执行Python ...
随机推荐
- Boost条件变量condition_variable_any
Boost条件变量可以用来实现线程同步,它必须与互斥量配合使用.使用条件变量实现生产者消费者的简单例子如下,需要注意的是cond_put.wait(lock)是在等待条件满足.如果条件不满足,则释放锁 ...
- 记录一次bug解决过程:else未补全导致数据泄露和代码优化
一.总结 快捷键ctrl + alt + 四个方向键 --> 倒置屏幕 未补全else逻辑,倒置查询数据泄露 空指针是最容易犯的错误,数据的空指针,可以普遍采用三目运算符来解决 SVN冲突解决关 ...
- 利用Spring AOP机制拦截方法一例
直接上代码: @Aspect // for aop @Component // for auto scan @Order(0) // execute before @Transactional pub ...
- js操作table表格导出数据到excel方法
js导出excel资料很少,网上也找了很多,基本都不能用,要么只能是IE用,还必须要权限,这是非常不好的.后来到github上找到table2excel.js,虽然可以用,但仍然对IE支持不够,也算不 ...
- 弹出iframe内嵌页面元素到父页面并全屏化
(注册博客好久了,一直没舍得添砖加瓦,主要是每次想写点东西的时候,随便搜一搜发现都比我总结的都要好,甚感尴尬,但是总是要开始的,所以这就是我的第一篇博客,也绝不会是最后一篇,废话不多说,直接入正题) ...
- 负载均衡之LVS集群
h3 { color: rgb(255, 255, 255); background-color: rgb(30,144,255); padding: 3px; margin: 10px 0px } ...
- 初窥Javascript单元测试,附带掌握一门新技能的学习方式。
之前没感觉要学啥单元测试,项目中测试都是手动测的,但也没觉的啥,但最近看文章和招聘上也多多少少有这方面的需求,于是网上搜索了一下,只找到了一些文章,但介绍的都不是很详细或者说比较复杂,满满的伤,虽然看 ...
- 在 Debian 上安装 SQL Server vNext CTP1
微软在开源 .NET Framework 之后,相继推出了跨平台的编辑器 Visual Studio Code,跨平台的 SQL Server 数据库 SQL Server vNext,Visual ...
- UIViewControllerTransitioningDelegate, UIViewControllerAnimatedTransitioning
#import "ModelAnimationDelegate.h" #import <UIKit/UIKit.h> #import "MapVC.h&quo ...
- AC算法学习笔记
1.算法流程图 (1) void Init() 此函数是初始化函数,用来给fail数组和goto数组初始化值. (2) void GotoFunction(string x) 这个函数的作 ...