- 博客(60)
- 收藏
- 关注
原创 DOM启蒙:CSS样式表与CSS规则
1.CSS样式表概览 (1) 添加样式表到HTML文档的方式:使用HTMLLinkElement节点(<link href='stylesheet.css' rel='stylesheet' type='text/css'>)引入外部样式表 使用HTMLStyleElement(<style></style>)来定义内联样式表 (2)...
2018-10-31 22:49:03
266
原创 DOM启蒙:DocumentFragment节点
1.DocumentFragment对象概览 把DocumentFragment看做一个空的文档模板,行为与实时DOM树相仿,但仅在内存中存在,并且它的子节点可以很简单地在内存中操作,而后附加到实时DOM。 2.createDocumentFragment(): 创建DocumentFragment 使用文档片段在内存中创建...
2018-10-30 22:20:40
261
原创 函数作用域和块作用域
1.函数中的作用域 1. 无论标识符声明在作用域的何处,这个标识符所代表的变量或函数都将附属于所处作用域的气泡。 2.函数作用域的含义:属于这个函数的全部变量可以在整个函数的范围内使用及复用。 function foo(a){ var b=2; //一些代码 function bar(){ //... } var c=3;} 2....
2018-10-29 21:31:32
5497
2
原创 DOM启蒙:文本节点
1.文本节点概览 HTML文档中的文本表现为 Text()构造函数的示例,即文本节点。 Text从CharacterData、Node及Object继承。 2.文本对象属性与方法 属性:.data:可获取Text节点的文本值/数据 .nodeValue:可获取Text节点的文本值/数据 textContent: 可用来获取所...
2018-10-27 17:35:19
219
原创 DOM启蒙:元素节点内联样式
1.样式属性概览 每个HTML元素都有个style属性,可以用来插入针对该元素的内联CSS属性。 注意:style属性返回一个CSSStyleDeclaration对象,而不是一个字符串。该CSSStyleDeclaration都仅包含该元素的内联样式。 2.获取、设置及移除单个内联CSS属性 1. 内联CSS样式都各自表示为元素节点style对象的一...
2018-10-27 17:10:08
362
原创 DOM启蒙:元素节点选取
1.选取特定元素节点querySeletor(): 允许一个CSS选择器语法格式参数。 返回文档中符合该选择器的首个元素节点。 同样在元素节点上定义了。使得该方法可以限制它的结果到DOM树的某个分支 getElementById()2.选取/创建一个元素节点列表(NodeList)quer...
2018-10-26 21:38:53
228
原创 词法作用域
1.词法阶段 1.词法化:对源代码中的字符进行检查,如果是有状态的解析过程,还会赋予单词词义 2.词法作用域:定义在词法阶段的作用域。由写代码时将变量和块作用域写在哪里来决定。 3.例子: 作用域气泡由其所对应的作用域块代码写在哪里决定,它是逐级包含的。 4.查找 作用...
2018-10-26 20:35:17
147
原创 作用域是什么
1.编译原理 传统的编译语言的流程中,程序的一段源代码在执行之前会经历三个步骤:分词/词法分析(Tokenizing/Lexing) 将由字符组成的字符串分解成有意义的代码块,这些代码块被称为词法单元。解析/语法分析 将词法单元流转换成一个由元素逐级嵌套所组成代表了程序语法结构的树(抽象语法树)代码生成 将抽象语法树转换为可执...
2018-10-26 20:03:50
3899
原创 DOM启蒙:元素节点
1.HTML*Element对象概览 HTML文档中每个元素都有个唯一的本源。即每个都有独一无二的JavaScript构造函数,是这些元素实例化为DOM树中的节点对象。2.HTML*Element对象属性与方法(包括继承的) 属性:tagName:获取元素的标签名 children:获取所有的直属子元素节点 attributes:获取元素属性与值地列表/集合 da...
2018-10-24 18:02:40
125
原创 DOM启蒙:文档节点
1.文档节点概览 HTMLDocument构造函数在DOM中创建DOCUMENT_NODE。 Document与HTMLDocument构造函数是浏览器在加载HTML文档时特意实例化的。 document.implementation.createHTMLDocument():可以在浏览器中当前加载的文档之外创建一个自己的HTML文档。 create...
2018-10-24 17:07:10
205
原创 DOM启蒙:节点概览
1.DOM:由节点对象组成的树2.节点类型 节点类型: DOCUMENT_NODE ELEMENT_NODE ATTRIBUTE_NODE TEXT_NODE DOCUMENT_FRAGMENT_NODE DOCUMENT_TYPE_NODE 这些节点类型常量在浏览器JavaScript环境中是Node对象的属性。 节点接口/构造函数HTML*Ele...
2018-10-21 11:02:28
152
原创 JavaScript第十章:动画基础知识
前面章节我介绍了如何利用DOM技术修改文档的样式信息。虽然说JavaScript添加样式可以节约时间和精力。但总的来说,CSS仍是完成这类任务的最佳工具。 而如果我们想随着时间的变化不断地改变某个元素的样式,则只能使用JavaScript。动画就是让元素的位置随着时间而不断地变化。1.位置 位置信息通常都是由CSS负责设计的。 下面分别是由CSS设置得位置...
2018-10-19 09:24:46
249
原创 JavaScript高级程序设计:变量、作用域和内存问题
1.基本类型和引用类型的值 ECMAScript变量可能包含两种不同的数据类型的值:基本类型值和引用类型值。 前一章我们讨论了五种基本数据类型:Undefined、Null、Boolean、Number和String。这五种基本数据类型是按值访问的。 引用类型的值是保存在内存中的对象。JavaScript不允许直接访问内存中的位置。 ①动态的属性 ...
2018-10-16 19:35:36
94
原创 Java进阶:接口、lambda表达式与内部类
1.接口示例 1)接口与回调 ①回调:可以指出某个特定事件发生时应该采取的动作。 例:java.swing.Timer可以使用它在到达给定的时间间隔时发出通告。 在构造定时器时,需要设置一个时间间隔,并告之定时器,当到达时间间隔时需要做些什么操作。要达到这样效果,在Java中,需将某个类的对象...
2018-10-15 16:12:19
293
原创 JavaScript第九章:className属性
与其使用DOM直接改变某个元素的格式,不如通过JavaScript代码去更新这个元素的class属性。 我们回顾下上一节中styleHeaderSiblings是如何添加样式的: function styleHeaderSiblings(){ if(!document.getElementsByTagName) return false; v...
2018-10-15 09:56:35
782
原创 JavaScript第九章:何时该用DOM脚本设置样式
我们不应该利用DOM去创建重要的内容,也不应该利用DOM为文档设置重要的样式。1.根据元素在节点树里的位置来设置样式 1)通过CSS声明样式的方式: ①为标签元素统一地声明样式 ②为特定class属性的所有元素统一地声明样式 ③为有独一无二的id属性的元素单独声明样式 2) CSS2引...
2018-10-15 09:36:58
182
原创 JavaScript高级程序设计:基础概念下
5.操作符 ①一元操作符: 1)递增与递减 前置递增、递减:变量的值在语句被求值以前改变。 后置递增、递减:变量的值是在语句被求值之后才执行。 递增、递减遵循的规则 1)包含有效数字字符的字符串:转换为数字值,再执行增减。字符串转换为数值 2)不包含有效...
2018-10-14 17:15:31
86
原创 JavaScript第九章:style属性
1.三体一位的网页结构层:由HTML或XHTML之类的标记语言负责创建 表示层:由CSS负责,描述页面内容应该如何呈现 行为层:JavaScript语言和DOM负责内容应该如何响应事件这一问题 网页的表示层和行为层总是存在的,即使未明确地给出任何具体的指令也是如此。Web浏览器将应用它的默认样式和默认事件处理函数。 网页设计时,应将结构层、表示层和行为层分离。分别使用...
2018-10-13 22:51:00
1486
原创 JavaScript高级程序设计:基本概念上
1.语法 ①区分大小写: ECMAScript中的一切(变量、函数名和操作符)都区分大小写。 ②标识符: 标识符(变量、函数、属性的名字或函数的参数),第一个字符必须是一个字母、下划线或一个美元符号,其他字符可以是字母、下划线、美元符号或数字。 ECMAScript采用驼...
2018-10-13 10:45:08
111
原创 JavaScript第八章:显示“快捷键清单”
1.accesskey属性 accesskey属性:可以把一个元素与键盘上的某个特定的按键关联在一起。 支持accesskey的浏览器有很多。有许多网站都会在一个快捷键清单页面上列明该网站都支持哪些快捷键。 一些基础的快捷键都有约定俗成的设置办法:accesskey=“1”:返回到本网站主页 accesskey=“2”:后退到前一个页面 accesskey=“...
2018-10-12 09:09:59
222
原创 JavaScript第八章:显示"文献来源链接表"
<blockquote cite="http://www.w3c.org/DOM/"> <p> A platform- and language-neutral interface that will allow programs and scripts to dynamically access and update the contents, ...
2018-10-12 08:53:34
187
原创 JavaScript第八章:显示缩略语部分
这一节我们主要是要用一个定义列表来显示<abbr>标签包含的文本和属性。 下面是我们想要的效果:<dl> <dt>W3C</dt> <dd>World Wide Web Consortium</dd> <dt>DOM</dt> <dd
2018-10-12 08:23:03
184
原创 JavaScript高级程序设计:在HTML中使用JavaScript
1.<script>元素 在HTML插入JavaScript代码的主要方法就是使用<script>元素。 1)<script>元素定义了下列6种属性:async:表示应该立即下载脚本,但不应妨碍页面中的其他操作。只对外部脚本有效 charset:表示通过src属性指定的代码的字符集 defer:表示脚本可延迟到文...
2018-10-11 22:19:48
196
原创 Java进阶:继承
1.Object类:所有类的超类 ① Object类是所有类的始祖,在Java中每个类都是由它扩展而来的。如果没有明确地指定超类,Object类就被认为是这个类的超类。可以使用Object类型的变量引用任何类型的对象。 在Java中只有基本类型不是对象。 Object obj=new Employee("Harry Hacker...
2018-10-10 20:59:02
142
原创 JavaScript第八章:内容
<!doctype html><html><head><meta charset="utf-8"><title>Explaining the Document Object Model</title></head><body> <h1&
2018-10-10 09:10:59
147
原创 JavaScript第八章:介绍
1.不应该做什么 有两项原则要牢记于心: 渐进增强:我们总是从核心的部分,也就是从内容开始。应该根据内容使用标记实现良好的结构,然后再逐步地加强各种行为。这些增强行为既可以是CSS改进呈现效果,也可以是通过DOM添加各种行为。 平稳退化:渐进增强的实现必然支持平稳退化。2.把“不可见”变成“可见” 除了标签之间的内容,标签内的属性也包含语义信息。在对...
2018-10-10 08:45:01
163
原创 JavaScript第七章:Ajax
Ajax的优势在于:对于页面的请求以异步方式发送到服务器。而服务器不会用整个页面来响应请求,它会在后台处理请求,与此同时用户还能继续浏览页面并与页面交互。你的脚本则可以按需加载和创建页面内容,而不会打断用户的浏览体验。1.XMLHttpRequest对象 这个对象充当着浏览器的脚本(客户端)与服务器之间的中间人的角色。JavaScript通过这个对象可以自己发送请求,同时自己处...
2018-10-09 21:21:27
97
原创 Java进阶:对象与类
1.类库中的LocalDate类 (1)Date类与LocalDate类 Date类:实例有一个状态即特定的时间点。时间是由一个固定时间点的毫秒数 LocalDate类:用于表示大家熟悉的日历表示法 (2)使用静态工厂方法代表你调用构造器: LocalDate.now(); LocalDate.of(year,m...
2018-09-28 22:12:17
84
原创 JavaScirpt第七章:重回图片库
在过去的图片库HTML文件中有一个图片和文字是为了showPic脚本服务的。若能将结构和行为彻底分开就最好不过。既然这些元素的存在是为了让DOM方法处理它们,那么用DOM方法创建它们才是最合适的选择。 var placeholder=document.createElement("img"); placeholder.setAttribute("id","placeholder")...
2018-09-28 20:43:35
155
原创 JavaScript第七章:DOM方法
在DOM看来,一个文档就是一棵节点树,如果想在节点树上添加内容,就必须插入新的节点。如果你想添加一些标记到文档,就必须插入元素节点。 1.createElement方法 <div id="testdiv"> </div> 如果想把一段文本插入testdiv元素,用DOM语言就是想添加一个p元素节点,并把这个节点作为div节点的一个子节点...
2018-09-28 19:52:40
153
原创 JavaScript第七章:一些传统方法
过去我们常常由标记创建网页结构,用JavaScript改变某些细节而非底层结构。这一章我们将要学习一些DOM方法,通过创建新元素和修改现有元素改变网页结构。首先回顾过去使用的两种技术document.write和innnerHTML。1.document.write document对象的write()可以快捷地把字符串插入文档中。<!DOCTYPE html>...
2018-09-28 09:06:39
236
原创 数据结构与算法分析:线性结构(3)
堆栈1.计算机如何进行表达式求值 算术表达式:由两类对象构成:运算数,运算符号 不同运算符号优先级不同 ①中缀表达式:把运算符号放在两个运算数之间:a+b*c-d/e 后缀表达式:把运算符号放在两个运算数之后:abc*+de/- 后缀表达式求值策略:从左向右扫描,逐个处理运算数和运算符号 ②启示: 需要有种存...
2018-09-26 10:56:46
168
原创 JavaScript案例分析:图片库改进版(2)
1.优化 showPic函数中里仍存在一些需要处理的假设 ①检查title属性是否存在,可以测试它是否为null var text=whichpic.getAttribute("title")?whichpic.getAttribute("title"):""; ②检查placeholder元素是否存在,但需要假设那是张照片。 nodeNam...
2018-09-26 09:41:07
189
原创 数据结构与算法分析:线性结构(2)
1.链表的游标实现 ①链表的指针实现有两个重要的特点: 数据存储在一组结构体中。每个结构体包含数据以及指向下一个结构体的指针 一个新的结构体可以通过调用malloc而从系统全局内存得到,并可通过调用free而被释放 ②游标法 模...
2018-09-25 19:19:16
138
原创 JavaScript第六章案例研究:图片库的改进版1
1.它支持平稳退化吗? ①如果JavaScript功能被禁用,会怎样? 即使JavaScript被禁用,网页的所有链接工作也都可以正常工作。 ②如果选用的是“javascript:”伪协议呢? 不支持在禁用了JavaScript的浏览器的浏览 ③如果在链接中使用的是“#”呢? 与②情况相同。 2.它的Java...
2018-09-25 09:25:38
218
原创 数据结构与算法分析:线性结构(1)
1.多项式的表示 例:一元多项式及其运算 一元多项式: 主要运算:多项式相加,相减,相乘 ①顺序存储结构直接表示 :项 的系数 ②顺序存储结构表示非零项 用结构数组表示:把每个多项式看作为 二元组的集合 例: 和 ③链表结构存储非零...
2018-09-23 11:42:23
833
原创 JavaScript第五章:性能考虑
1.尽量少访问DOM和尽量减少标记 正如我们所知,只要查询DOM中的某些元素,浏览器就会搜索整个DOM元素,从中查找可能的元素。 ①在多个函数都会取得类似的一组元素时,可以考虑重构函数,把搜索结果保存在一个全局变量里,或者把一组元素直接以参数形式传递给参数。 ②尽量减少文档里的标记数量。过多不必要的元素只会增加DOM树的规模,进而增加遍历DOM树以查找元素的时间...
2018-09-22 15:48:42
109
原创 JavaScript第五章:向后兼容
1.对象检测 上一节中,我们一直强调,网页的访问者的可能使用了不支持JavaScrip的浏览器t或使用的是古老的浏览器。因此,JavaScript脚本可能在这些访问者的浏览器上不能正常工作。 解决这个问题的方案中之一:检查浏览器对JavaScript的支持程度。 对象检测:只要将某个方法打包在一个if语句,就可以根据这个if语句的条件表达式的求值结果决定采取怎样的行动。...
2018-09-22 15:25:03
390
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人