目录
五,javaScript内置对象与DOM操作
1,JavaScript对象定义和使用
2,JavaScript内置对象
2.1 Array数组
2.1.1 创建方式
2.1.2 常用属性:
2.1.3 常用方法:
2.1.4 清空数组:
2.1.5 举例
2.2 基本包装类型
2.3 Date日期
2.3.1 常用方法
2.3.2 举例
2.4 String字符串
2.4.1 常用方法
2.4.2 举例
2.5 Math对象
2.5.1 常用方法
2.5.2 举例
2.6 Global
3,JavaScript单击事件与元素标签操作
4,JavaScript中的Timing定时事件
4.1 Timing事件
4.2 如何停止?
5,JavaScript实现简单计算器实例
6,JavaScript简单操作元素标签实例
7,JS事件处理
7.1 事件绑定方式
7.2 获取事件源对象
7.3 bclick双击事件
7.5 mouse鼠标移入移出事件
7.6 图片切换
7.7 放大镜效果
7.8 拖动效果
7.9 keydown键盘事件
7.10 load事件
7.11 表单事件
7.12 change事件
7.13 scroll滚动事件
8,JS BOM
8.1 window
8.1.1 浏览器对象模型(Browser Object Model (BOM))
8.1.2 Window 对象
8.1.3 窗口尺寸
8.1.4 详细的window对象、window对象方法
8.2 navigator和screen
8.2.1 navigator对象
8.2.2 screen对象
8.3 history和location
8.3.1 history对象
8.3.2 location对象
9,HTML DOM
9.1 介绍
9.1.1 HTML DOM(文档对象模型)
9.1.2 什么是 DOM?
9.1.3 什么是 HTML DOM?
9.1.4 HTML DOM Document 对象
9.1.5 举例
9.2 a链接操作
9.2.1 Anchor 对象
9.2.2 举例
9.3 img图片操作
9.4 form表单操作
9.5 input多选框操作
9.6 select操作
9.7 table表格操作
10,XML DOM
10.1 介绍
10.1.1 解析 XML
10.1.2 XML DOM 方法
10.1.3 访问节点
10.1.4 XML DOM 节点信息
10.1.5 XML DOM - Node 对象
10.2 节点的遍历
10.3 节点的删除
10.4 节点属性操作
10.5 节点的创建
10.6 节点的克隆
10.7 节点的替换
10.8 selecti选项
10.9 table表格
五,javaScript内置对象与DOM操作
完整的 JavaScript 参考手册
JavaScript中的对象分为3种:内置对象,浏览器对象、自定义对象。
1,JavaScript对象定义和使用
教程链接:JavaScript 对象——W3school
创建对象的方式:
原始方式创建对象;
工厂模式创建对象;
自定义构造函数创建对象;
直接创建自定义对象;
举例:
Document
JavaScript语言实例--对象的定义和使用
2,JavaScript内置对象
2.1 Array数组
JavaScript Array 对象
2.1.1 创建方式
var a= new Array(); //创建一个空数组
a = new Array(10); //创建一 个数组单元为10个的数组。
a=new Array(18, 20, 38);//创建一 个指定数组单元的数组。
a=["a","b","c","d"]; //快捷定义数组
2.1.2 常用属性:
2.1.3 常用方法:
tostring():把数组转换为字符串,并返回结果。
sort():对数组的元素进行排序
join():把数组的所有元素放入一个字符串。元素通过指定的分隔符进行分隔。
pop():删除并返回数组的最后-一个元素
push():向数组的末尾添加一个或更多元素,并返回新的长度。
shift():取出数组中的第一个元素, 修改length属性
unshift():在数组最前面插入项,返回数组的长度
reverse():反转数组
concat():把参数拼接到当前数组
2.1.4 清空数组:
arr=[]; // 方式1推荐
arr.length = 0; // 方式2
arr.splice(0, arr.length); // 方式3
2.1.5 举例
Document
JavaScript语言实例--内置对象
2.2 基本包装类型
基本包装类型
为了方便操作基本数据类型,JavaScript还提供了 三个特殊的引用类型: String/Number/Boolean
下面代码的问题?
s1是基本类型,基本类型是没有方法的
var s1 = 'zhangsan' ;
var s2 = s1. substring(5);
当调用s1. substring(5)的时候,先把s1包装成String类型的临时对象,再调用substring方法, 最后销毁临时对象
var s1 = new String( ' zhangsan');
var s2 = s1. substring(5);
s1 = null;
创建基本包装类型的对象
var num =18;//数值,基本类型
var num = Number('18');//类型转换
var num = new Number(18);//基本包装类型,对象
Number和Boolean基本包装类型基本不用,使用的话可能会引起歧义。例如:
var b1 = new Boolean(false);
var b2 = b1 && true;//结果是什么
2.3 Date日期
JavaScript Date 对象
2.3.1 常用方法
var dd = new Date();
getDate():从Date对象返回一个月中的某一天(1 ~ 31)。
getDay():从Date对象返回一周中的某一天(0 ~ 6)。
getMonth():从Date对象返回月份(0 ~ 11)。
getFullYear():从Date对象以四位数字返回年份。
getYear():请使用getFullvear() 方法代替。
getHours():返回Date对象的小时(0~23)。
getMinutes():返回Date对象的分钟(0~59)。
getseconds():返回 Date对象的秒数(0~59)。
getMilliseconds():返回 Date 对象的毫秒(0~999)。
getTime():返回 1970年1月1日至今的毫秒数。
同上还有很多set方法用来设置。
2.3.2 举例
Document
JavaScript语言实例--内置对象
2.4 String字符串
JavaScript String 对象
2.4.1 常用方法
anchor():创建HTHL锚。
*charAt() :返回在指定位置的字符。
charCodeAt():返回在指定的位置的字符的Unicode 编码。
*index0f() :检索字符串。
*lastIndexOf() :从后向前搜索字符串。
match():找到一个或多个正在表达式的匹配。
*replace() :替换与正则表达式匹配的子串。
search():检索与正则表达式相匹配的值。
slice():提职字符串的片断,并在新的字符串中返回被提取的部分。
split():把字符串分割为字符串数组。
substr():从起始索引号提取字符串中指定数目的字符。
*substring() :提取字符串中两个指定的索引号之间的字符。
tolocaleLowerCase():把字符串转换为小写。
tolocaleUpperCase():把字符串转换为大写。
*toLowerCase() :把字符申转换为小写。
*toupperCase() :把字符串转换为大写。
2.4.2 举例
Document
JavaScript语言实例--内置对象
2.5 Math对象
JavaScript Math 对象
注释:Math 对象并不像 Date 和 String 那样是对象的类,因此没有构造函数 Math(),像 Math.sin() 这样的函数只是函数,不是某个对象的方法。您无需创建它,通过把 Math 作为对象使用就可以调用其所有属性和方法。
2.5.1 常用方法
abs(x):返回数的绝对值。
ceil(x):对数进行上舍入。
floor(x):对数进行下舍入。
random():返回0~1之间的随机数。
round(x):把数四舍 五入为最接近的整数。
max(x,y):返回x和y中的最高值。
min(x,y):返回x和y中的最低值。
2.5.2 举例
Document
JavaScript语言实例--内置对象
2.6 Global
escape(string):可对字符串进行编码
unescape(string):函数可对通过escape() 编码的字符串进行解码。
encodeURI(URIstring):函数可把字符串作为URI 进行编码。
decodeURI(URIstring):函数可对encodeURI() 函数编码过的urI进行解码。
peval(string):函数可计算某个字符串,并执行其中的的JavaScript 代码。
getClass(javaobj):函数可返回一个Javaobject的JavaClass
*isNaN(x) :函数用于检查其参数是否是非数字值。
Number(object):函数把对象的值转换为数字。
*parsef loat(string) :还数可解析 一个字符串,并返回一个浮点数。
*parseInt(string, radix)
3,JavaScript单击事件与元素标签操作
JavaScript 事件
Document
JavaScript语言实例--单击事件
点击我
1111111
2222222
4,JavaScript中的Timing定时事件
JavaScript Timing 事件
4.1 Timing事件
4.2 如何停止?
Document
JavaScript语言实例--定时器
计数器:0
停止
5,JavaScript实现简单计算器实例
通过javascript进行简单的数据获取、计算、显示
Document
JavaScript语言实例--简单计算器
6,JavaScript简单操作元素标签实例
通过JavaScript控制HTML元素大小
Document
JavaScript语言实例--js操作元素标签属性(放大和缩小)
放大
缩小
隐藏
7,JS事件处理
参考文档:HTML DOM Event 对象
7.1 事件绑定方式
事件源,事件,事件处理程序
举例介绍两种事件绑定方式:
JavaScript语言实例
JavaScript语言实例--事件处理(事件绑定方式)
按钮1
按钮2
7.2 获取事件源对象
两种事件绑定方式对应两种获取事件源对象的方式
JavaScript语言实例
JavaScript语言实例--获取事件源对象
2级标题1
2级标题2
7.3 bclick双击事件
JavaScript语言实例
JavaScript语言实例--dblclick双击事件
JavaScript语言实例
JavaScript语言实例--contextmenu鼠标右击事件
7.5 mouse鼠标移入移出事件
JavaScript语言实例
JavaScript语言实例--mouse鼠标移入和移出事件
7.6 图片切换
实际应用场景
JavaScript语言实例
JavaScript语言实例--onmouseover鼠标移入事件
7.7 放大镜效果
实际应用场景
所谓放大,其实并没有真实的放大(会变模糊),而是采用两张图片,当鼠标在小图片上移动时,大图根据鼠标位置进行相应的变化。
JavaScript语言实例
JavaScript语言实例--图片的放大镜效果
7.8 拖动效果
重点是解决定位的问题:
1,一般图层的定位是根据其左上角顶点的位置+尺寸,进行确定;
2,当鼠标按下时,可以获取鼠标的当前位置。由于图层的大小及定位已知,这样就可以知道鼠标位置与图层左上角顶点的距离(x轴和y轴两个方向);
3,当鼠标移动到新的位置时,根据鼠标的当前位置和已经计算好的鼠标与图层左上角的相对位置,就可以实时更新图层位置;
JavaScript语言实例
JavaScript语言实例--拖动效果
7.9 keydown键盘事件
JavaScript语言实例
JavaScript语言实例--键盘事件onkeydown
7.10 load事件
1)由于一般程序是自上而下顺序运行的,所以当把JavaScript代码放在body前时,可能会报错。所以习惯将其放在body之后
2)但是可以通过onload,来实现把JavaScript代码放在body前,表示当页面加载完成后自动执行的程序
JavaScript语言实例
JavaScript语言实例--onload事件
7.11 表单事件
JavaScript语言实例
JavaScript语言实例--表单事件
7.12 change事件
JavaScript语言实例
JavaScript语言实例--change事件
-请选择-
北京
河北
天津
河南
山西
应用场景:以京东商店为例,只有向下拖动滚动条之后,部分图片才显示出来,通过scroll滚动事件可以获得距离顶端的滚动距离,进而控制向后台获取信息的时机。
JavaScript语言实例
JavaScript语言实例--滚动条事件
8,JS BOM
详细的参考手册JavaScript 参考手册
8.1 window
JavaScript Window - 浏览器对象模型
浏览器对象模型(Browser Object Model (BOM))允许 JavaScript 与浏览器对话。
8.1.1 浏览器对象模型(Browser Object Model (BOM))
不存在浏览器对象模型(BOM)的官方标准。
现代的浏览器已经(几乎)实现了 JavaScript 交互相同的方法和属性,因此它经常作为 BOM 的方法和属性被提到。
8.1.2 Window 对象
所有浏览器都支持 window 对象。它代表浏览器的窗口。
所有全局 JavaScript 对象,函数和变量自动成为 window 对象的成员。
全局变量是 window 对象的属性。
全局函数是 window 对象的方法。
甚至(HTML DOM 的)document 对象也是 window 对象属性:
window.document.getElementById("header");
等同于
document.getElementById("header");
8.1.3 窗口尺寸
两个属性可用用于确定浏览器窗口的尺寸。
这两个属性都以像素返回尺寸:
window.innerHeight - 浏览器窗口的内高度(以像素计)
window.innerWidth - 浏览器窗口的内宽度(以像素计)
浏览器窗口(浏览器视口)不包括工具栏和滚动条。
对于 Internet Explorer 8, 7, 6, 5:
document.documentElement.clientHeight
document.documentElement.clientWidth
或
document.body.clientHeight
document.body.clientWidth
一个实用的 JavaScript 解决方案(包括所有浏览器):
var w = window.innerWidth
|| document.documentElement.clientWidth
|| document.body.clientWidth;
var h = window.innerHeight
|| document.documentElement.clientHeight
|| document.body.clientHeight;
8.1.4 详细的window对象、window对象方法
Window 对象
Window 对象表示浏览器中打开的窗口。
如果文档包含框架(frame 或 iframe 标签),浏览器会为 HTML 文档创建一个 window 对象,并为每个框架创建一个额外的 window 对象。
注释:没有应用于 window 对象的公开标准,不过所有浏览器都支持该对象。
Window 对象表示一个浏览器窗口或一个框架。在客户端 JavaScript 中,Window 对象是全局对象,所有的表达式都在当前的环境中计算。也就是说,要引用当前窗口根本不需要特殊的语法,可以把那个窗口的属性作为全局变量来使用。例如,可以只写 document,而不必写 window.document。
同样,可以把当前窗口对象的方法当作函数来使用,如只写 alert(),而不必写 Window.alert()。
除了上面列出的属性和方法,Window 对象还实现了核心 JavaScript 所定义的所有全局属性和方法。
Window 对象的 window 属性和 self 属性引用的都是它自己。当你想明确地引用当前窗口,而不仅仅是隐式地引用它时,可以使用这两个属性。除了这两个属性之外,parent 属性、top 属性以及 frame[] 数组都引用了与当前 Window 对象相关的其他 Window 对象。
举例:通过点击按钮打开新的页面,并使用alert进行消息提示
JavaScript语言
JavaScript中的BOM--window
打开一个新窗口
8.2 navigator和screen
8.2.1 navigator对象
Navigator 对象
Navigator 对象包含有关浏览器的信息。
注释:没有应用于 navigator 对象的公开标准,不过所有浏览器都支持该对象。
Navigator 对象包含的属性描述了正在使用的浏览器。可以使用这些属性进行平台专用的配置。
虽然这个对象的名称显而易见的是 Netscape 的 Navigator 浏览器,但其他实现了 JavaScript 的浏览器也支持这个对象。
Navigator 对象的实例是唯一的,可以用 Window 对象的 navigator 属性来引用它。
举例:展示浏览器信息,检测浏览器的类型并提示
JavaScript语言
JavaScript中的BOM--navigator浏览器
8.2.2 screen对象
Screen 对象
Screen 对象包含有关客户端显示屏幕的信息。
注释:没有应用于 screen 对象的公开标准,不过所有浏览器都支持该对象。
举例:获取屏幕的尺寸和可用尺寸
JavaScript语言
JavaScript中的BOM--screen对象
js04.html
8.3 history和location
8.3.1 history对象
History 对象包含用户(在浏览器窗口中)访问过的 URL。
History 对象是 window 对象的一部分,可通过 window.history 属性对其进行访问。
注释:没有应用于 History 对象的公开标准,不过所有浏览器都支持该对象。
History 对象最初设计来表示窗口的浏览历史。但出于隐私方面的原因,History 对象不再允许脚本访问已经访问过的实际 URL。唯一保持使用的功能只有 back()、forward() 和 go() 方法。
举例:测试页面前进后退
JavaScript语言
JavaScript中的BOM--history对象
后退一步
后退一步
后退二步
前进一步
前进一步
前进二步
js03.html
8.3.2 location对象
Location 对象包含有关当前 URL 的信息。
Location 对象是 Window 对象的一个部分,可通过 window.location 属性来访问。
Location 对象存储在 Window 对象的 Location 属性中,表示那个窗口中当前显示的文档的 Web 地址。它的 href 属性存放的是文档的完整 URL,其他属性则分别描述了 URL 的各个部分。这些属性与 Anchor 对象(或 Area 对象)的 URL 属性非常相似。当一个 Location 对象被转换成字符串,href 属性的值被返回。这意味着你可以使用表达式 location 来替代 location.href。
举例:在当前窗口进行页面的跳转和刷新
JavaScript语言
JavaScript中的BOM--location对象
点击跳转到百度
刷新
9,HTML DOM
HTML DOM 详细教程
JavaScript 参考手册(包含HTML DOM 对象参考手册)
9.1 介绍
JavaScript HTML DOM简介
9.1.1 HTML DOM(文档对象模型)
当网页被加载时,浏览器会创建页面的文档对象模型(D ocument O bject M odel)。
HTML DOM 模型被结构化为对象树 :
对象的 HTML DOM 树
通过这个对象模型,JavaScript 获得创建动态 HTML 的所有力量:
JavaScript 能改变页面中的所有 HTML 元素
JavaScript 能改变页面中的所有 HTML 属性
JavaScript 能改变页面中的所有 CSS 样式
JavaScript 能删除已有的 HTML 元素和属性
JavaScript 能添加新的 HTML 元素和属性
JavaScript 能对页面中所有已有的 HTML 事件作出反应
JavaScript 能在页面中创建新的 HTML 事件
9.1.2 什么是 DOM?
DOM 是一项 W3C (World Wide Web Consortium) 标准。
DOM 定义了访问文档的标准:
“W3C 文档对象模型(DOM)是中立于平台和语言的接口,它允许程序和脚本动态地访问、更新文档的内容、结构和样式。”
W3C DOM 标准被分为 3 个不同的部分:
Core DOM - 所有文档类型的标准模型
XML DOM - XML 文档的标准模型
HTML DOM - HTML 文档的标准模型
9.1.3 什么是 HTML DOM?
HTML DOM 是 HTML 的标准对象模型和编程接口。它定义了:
作为对象的 HTML 元素
所有 HTML 元素的属性
访问所有 HTML 元素的方法
所有 HTML 元素的事件
换言之:HTML DOM 是关于如何获取、更改、添加或删除 HTML 元素的标准 。
9.1.4 HTML DOM Document 对象
文档对象代表您的网页。
如果您希望访问 HTML 页面中的任何元素,那么您总是从访问 document 对象开始。
下面是一些如何使用 document 对象来访问和操作 HTML 的实例。
查找 HTML 元素
方法
描述
document.getElementById(id )
通过元素 id 来查找元素
document.getElementsByTagName(name )
通过标签名来查找元素
document.getElementsByClassName(name )
通过类名来查找元素
改变 HTML 元素
方法
描述
element.innerHTML = new html content
改变元素的 inner HTML
element.attribute = new value
改变 HTML 元素的属性值
element.setAttribute(attribute , value )
改变 HTML 元素的属性值
element.style.property = new style
改变 HTML 元素的样式
添加和删除元素
方法
描述
document.createElement(element )
创建 HTML 元素
document.removeChild(element )
删除 HTML 元素
document.appendChild(element )
添加 HTML 元素
document.replaceChild(element )
替换 HTML 元素
document.write(text )
写入 HTML 输出流
添加事件处理程序
方法
描述
document.getElementById(id).onclick = function(){code }
向 onclick 事件添加事件处理程序
查找 HTML 对象
首个 HTML DOM Level 1 (1998),定义了 11 个 HTML 对象、对象集合和属性。它们在 HTML5 中仍然有效。
后来,在 HTML DOM Level 3,加入了更多对象、集合和属性。
属性
描述
DOM
document.anchors
返回拥有 name 属性的所有 元素。
1
document.applets
返回所有 元素(HTML5 不建议使用)
1
document.baseURI
返回文档的绝对基准 URI
3
document.body
返回 元素
1
document.cookie
返回文档的 cookie
1
document.doctype
返回文档的 doctype
3
document.documentElement
返回 元素
3
document.documentMode
返回浏览器使用的模式
3
document.documentURI
返回文档的 URI
3
document.domain
返回文档服务器的域名
1
document.domConfig
废弃。返回 DOM 配置
3
document.embeds
返回所有 元素
3
document.forms
返回所有
1
document.head
返回 元素
3
document.images
返回所有 元素
1
document.implementation
返回 DOM 实现
3
document.inputEncoding
返回文档的编码(字符集)
3
document.lastModified
返回文档更新的日期和时间
3
document.links
返回拥有 href 属性的所有 和 元素
1
document.readyState
返回文档的(加载)状态
3
document.referrer
返回引用的 URI(链接文档)
1
document.scripts
返回所有
举例:获取对象子节点相关信息
JavaScript中的DOM
JavaScript语言中HTML DOM
我们重点学习HTML DOM的什么操作:
如何改变 HTML 元素的内容
如何改变 HTML 元素的样式(CSS)
如何对 HTML DOM 事件作出反应
如何添加和删除 HTML 元素
9.2 a链接操作
9.2.1 Anchor 对象
HTML DOM Anchor 对象
Anchor 对象表示 HTML 超链接。
在 HTML 文档中 标签每出现一次,就会创建 Anchor 对象。
锚可用于创建指向另一个文档的链接(通过 href 属性),或者创建文档内的书签(通过 name 属性)。
您可以通过搜索 Document 对象中的 anchors[] 数组来访问锚,或者使用 document.getElementById()。
9.2.2 举例
获取文档中的所有链接。通过anchor对象获取相应元素
JavaScript中的DOM
JavaScript语言中HTML DOM 操作
9.3 img图片操作
通过延迟加载进行介绍。
为什么需要延迟加载?
网页在加载过程中,往往是先加载文字,然后是图片,最后是音频、视频等。而且是默认只加载第一版页面,当向下拉时,才会继续加载后面的内容
举例:延迟3秒加载图片
HLL-11_xuandong.gif(素材如下)
示例代码:
JavaScript中的DOM
JavaScript语言中HTML DOM 操作--图片延迟加载
举例:获取表单中的元素信息
JavaScript中的DOM
JavaScript语言中HTML DOM 操作
点击提交
HTML DOM Checkbox 对象
举例:通过input的checkbox来了解
JavaScript中的DOM
JavaScript语言中HTML DOM 操作
获取
9.6 select操作
HTML DOM Select 对象
HTML DOM Option 对象
举例:通过调换选中元素位置,测试select操作
JavaScript中的DOM
JavaScript语言中HTML DOM 操作-select对象
邓丽君
张国荣
梅艳芳
黄家驹
迈克尔.杰克逊
姚贝娜
张雨生
>>
<<
9.7 table表格操作
举例:通过点击删除、添加按钮,操作表格元素。
JavaScript中的DOM
JavaScript语言中HTML DOM 操作-table对象
学号
姓名
性别
年龄
操作
1001
张三
男
20
删除
1002
李四
女
21
删除
1003
王五
男
22
删除
添加学生信息
10,XML DOM
XML DOM 教程
10.1 介绍
XML 文档对象模型定义访问和操作XML文档的标准方法。
DOM 将 XML 文档作为一个树形结构,而树叶被定义为节点。
XML DOM 定义了访问和处理 XML 文档的标准方法。
XML DOM 是 XML Document Object Model 的缩写,即 XML 文档对象模型。
HTML DOM提供了一些属性和标签,但是在实际运用过程中,经常也会看到一些特殊的标签,这就是通过XML进行扩展的结果,可以实现HTML范畴以外的功能。
即对有些操作,HTML找不到解决方案,这时就需要通过XML来处理。
下面的图片展示出节点树的一个部分,以及节点间的关系:(和HTML类似)
10.1.1 解析 XML
所有现代浏览器都内建了用于读取和操作 XML 的 XML 解析器。
解析器把 XML 读入内存,并把它转换为可被 JavaScript 访问的 XML DOM 对象。
微软的 XML 解析器与其他浏览器中的解析器是有差异的。微软的解析器支持对 XML 文件和 XML 字符串(文本)的加载,而其他浏览器使用单独的解析器。不过,所有的解析器都含有遍历 XML 树、访问、插入及删除节点的函数。
10.1.2 XML DOM 方法
x.getElementsByTagName(name) - 获取带有指定标签名称的所有元素
x.appendChild(node) - 向 x 插入子节点
x.removeChild(node) - 从 x 删除子节点
注释:在上面的列表中,x 是一个节点对象。
10.1.3 访问节点
XML DOM 访问节点
可以通过三种方法来访问节点:
通过使用 getElementsByTagName() 方法
通过循环(遍历)节点树
通过利用节点的关系在节点树中导航
10.1.4 XML DOM 节点信息
XML DOM 节点信息
节点的属性
在 XML 文档对象模型 (DOM) 中,每个节点都是一个对象 。
对象拥有方法(功能)和属性(关于对象的信息),并可通过 JavaScript 进行访问和操作。
三个重要的 XML DOM 节点属性是:
nodeName
nodeValue
nodeType
nodeName 属性
nodeName 属性规定节点的名称。
nodeName 是只读的
元素节点的 nodeName 与标签名相同
属性节点的 nodeName 是属性的名称
文本节点的 nodeName 永远是 #text
文档节点的 nodeName 永远是 #document
nodeValue 属性
nodeValue 属性规定节点的值。
元素节点的 nodeValue 是 undefined
文本节点的 nodeValue 是文本自身
属性节点的 nodeValue 是属性的值
nodeType 属性
nodeType 属性规定节点的类型。
nodeType 是只读的。
最重要的节点类型是:
元素类型
节点类型
元素
1
属性
2
文本
3
注释
8
文档
9
10.1.5 XML DOM - Node 对象
XML DOM - Node 对象
Node 对象是整个 DOM 的主要数据类型。
节点对象代表文档树中的一个单独的节点。
节点可以是元素节点、属性节点、文本节点,或者也可以是“节点类型”那一节中所介绍的任何一种节点。
请注意,虽然所有的对象均能继承用于处理父节点和子节点的属性和方法,但是并不是所有的对象都拥有父节点或子节点。例如,文本节点不能拥有子节点,所以向类似的节点添加子节点就会导致 DOM 错误。
10.2 节点的遍历
举例:对比HTML DOM和XML DOM获取内容的差异
JavaScript中的XML DOM
XML DOM:节点的遍历
10.3 节点的删除
举例:鼠标移入、选择时显示不同的颜色。并删除特定颜色的节点
JavaScript中的XML DOM
XML-DOM:节点的删除
成龙
甄子丹
李连杰
宋小宝
成龙
甄子丹
李连杰
宋小宝
删除
10.4 节点属性操作
举例:通过XML DOM改变节点属性(这些属性不存在于HTML范畴之内)
JavaScript中的XML DOM
XML-DOM:改变节点的属性
百度
10.5 节点的创建
XML DOM 创建节点
举例:通过XML DOM进行节点创建、后追加、前追加。
JavaScript中的XML DOM
XML-DOM:节点的创建
名称:
添加
10.6 节点的克隆
举例:双击图片,将小图标展示在指定展示框中(克隆是指,将图片节点复制一份,传送过去,否则会导致原节点消失)
注:网页中所有的节点,都是对象,如果不通过creat方式创建新节点的话,那么在这个网页内节点都是唯一的。所以需要克隆的方式。
JavaScript中的XML DOM
XML-DOM:节点的克隆
双击图片可实现图片的添加
10.7 节点的替换
举例:通过双击事件,将图片替换掉窗口内的元素。
JavaScript中的XML DOM
XML-DOM:节点的替换
双击图片可实现图片的替换
10.8 selecti选项
举例:通过XML DOM操作,移动选择项。
JavaScript中的XML DOM
XML DOM 操作-select对象
邓丽君
张国荣
梅艳芳
黄家驹
迈克尔.杰克逊
姚贝娜
张雨生
>>
<<
10.9 table表格
举例:通过XML DOM而不是table标签相关方法操作表格
JavaScript中的XML DOM
JavaScript语言中XML DOM 操作-table对象
学号
姓名
性别
年龄
操作
1001
张三
男
20
删除
1002
李四
女
21
删除
1003
王五
男
22
删除
添加学生信息
章节汇总在这里(づ ̄3 ̄)づ╭❤~@&再见萤火虫&【04-前端技术】
对学习Java感兴趣的同学欢迎加入QQ学习交流群:1126298731
有问题欢迎提问,大家一起在学习Java的路上打怪升级!(o゜▽゜)o☆[BINGO!]
你可能感兴趣的:(JavaEE开发工程师学习之路,前端技术,JavaScript内置对象,JS的DOM操作,Java开发工程师)
python 读excel每行替换_Python脚本操作Excel实现批量替换功能
weixin_39646695
python 读excel每行替换
Python脚本操作Excel实现批量替换功能大家好,给大家分享下如何使用Python脚本操作Excel实现批量替换。使用的工具Openpyxl,一个处理excel的python库,处理excel,其实针对的就是WorkBook,Sheet,Cell这三个最根本的元素~明确需求原始excel如下我们的目标是把下面excel工作表的sheet1表页A列的内容“替换我吧”批量替换为B列的“我用来替换的
x86-64汇编语言训练程序与实战
十除以十等于一
本文还有配套的精品资源,点击获取简介:汇编语言是一种低级语言,与机器代码紧密相关,特别适用于编写系统级代码及性能要求高的应用。nasm编译器是针对x86和x86-64架构的汇编语言编译器,支持多种语法风格和指令集。项目Euler提供数学和计算机科学问题,鼓励编程技巧应用,前100个问题的答案可共享。x86-64架构扩展了寄存器数量并引入新指令,提升了数据处理效率。学习汇编语言能够深入理解计算机底层
男士护肤品哪个牌子好?十大男士护肤品排行榜
高省APP珊珊
很多男生意识到护肤的必要性,开始着手护肤,但不知道该选哪个男士护肤品品牌使用好。目前市面上很多男士护肤品品牌,可谓琳琅满目,让人眼花缭乱。男士挑选护肤品时,根据自己皮肤需求去正规渠道挑选合适的知名护肤品比较放心靠谱。高省APP,是2021年推出的平台,0投资,0风险、高省APP佣金更高,模式更好,终端用户不流失。【高省】是一个自用省钱佣金高,分享推广赚钱多的平台,百度有几百万篇报道,也期待你的加入
三菱PLC全套学习资料及应用手册
good2know
本文还有配套的精品资源,点击获取简介:三菱PLC作为工业自动化领域的核心设备,其系列产品的学习和应用需要全面深入的知识。本次资料包为学习者提供从基础到进阶的全方位学习资源,包括各种型号PLC的操作手册、编程指南、软件操作教程以及实际案例分析,旨在帮助用户系统掌握PLC的编程语言、指令系统及在各类工业应用中的实施。1.三菱PLC基础知识入门1.1PLC的基本概念可编程逻辑控制器(PLC)是工业自动化
2022-10-20
体力劳动者
不因感觉稍纵即逝就不加记录。在女儿睡觉后我记下今天的小故事。接手新班级后,今天是第二次收到家长的感谢信(微信)。是我表扬次数最多的两位学生家长致来的感谢,他们明显感受到孩子自信、阳光了不少,写作业由被动变为了主动,家庭氛围也由鸡飞狗跳变成了其乐融融。在被顽皮的学生气得头晕之后,我感到了久违的价值感,责任感甚至使命感,我回复家长这样一句话:我们也需要家长的反馈好让我们的教育工作更有劲头。我也认识到,
程翔授《评价一篇记叙文》
行吟斯基
桂林十一中高一2中学生自读程老师学生文章板书课题师巡看。看完举手。问:它是记叙文。不商量。独立打分。学生评价打分。师:高低都正常,不受干扰。师巡,略评。打完举手。调查:分层次举手——高分先举手。最低分。最高95分。最低45分。女:差距太大!师:同一篇,相差55分。若是你的文章,愿落谁手?男:身临其境感觉。师:你有此经历?没也没关系。女:不优美……,结尾无升华……无感悟……师:辞藻不美?(师追问)男
《玉骨遥》:大司命为什么不杀朱颜?原因没那么简单
windy天意晚晴
《玉骨遥》里,朱颜就是时影的命劫之人。重明与时影早就知道,他们一直瞒着大司命,如今大司命也知道了真相。可是大司命却没有杀朱颜,而是给朱颜下了诛心咒,还说时影的命劫已经破了,真的如此吗?1、计划总是赶不上变化的大司命从目前剧情来说,大司命还不如时影,他信心十足的事情总会有纰漏。他不让时影见命劫之女,结果时影还是遇上了。他想让时影走火入魔,一心复仇,结果时影在朱颜的劝说下放下了仇恨。大司命让时影开山收
移动端城市区县二级联动选择功能实现包
good2know
本文还有配套的精品资源,点击获取简介:本项目是一套为移动端设计的jQuery实现方案,用于简化用户在选择城市和区县时的流程。它包括所有必需文件:HTML、JavaScript、CSS及图片资源。通过动态更新下拉菜单选项,实现城市到区县的联动效果,支持数据异步加载。开发者可以轻松集成此功能到移动网站或应用,并可基于需求进行扩展和优化。1.jQuery移动端解决方案概述jQuery技术简介jQuery
日更006 终极训练营day3
懒cici
人生创业课(2)今天的主题:学习方法一:遇到有用的书,反复读,然后结合自身实际,列践行清单,不要再写读书笔记思考这本书与我有什么关系,我在哪些地方能用到,之后我该怎么用方法二:读完书没映像怎么办?训练你的大脑,方法:每读完一遍书,立马合上书,做一场分享,几分钟都行对自己的学习要求太低,要逼自己方法三:学习深度不够怎么办?找到细分领域的榜样,把他们的文章、书籍、产品都体验一遍,成为他们的超级用户,向
自律打卡第四天:比昨天进步一点点
花儿的念想
今天新闻我们县城又确诊了一例,截止目前已经确诊的三例了,打开,看了一篇简友写的武汉的真实情况,有病住不了院,还没等到床位已经去世的消息,心里更加的难受,武汉尚且这样,如果是我们这没有高速没有火车的十八线的小县城发生这种情况,那情况将是更加的不堪设想,不敢想,唯有祈求灾难早点快去,平安才是最大的福气。突然觉得我的自律打卡,比昨天进步一点点。更希望疫情战争每一天都要比昨天好一点,希望一觉醒来听到的是好
15个小技巧,让我的Windows电脑更好用了!
曹元_
01.桌面及文档处理第一部分的技巧,主要是围绕桌面的一些基本操作,包括主题设置、常用文档文件快捷打开的多种方式等等。主题换色默认情况下,我们的Win界面可能就是白色的文档界面,天蓝色的图表背景,说不出哪里不好看,但是就是觉得不够高级。imageimage说到高级感,本能第一反应就会和暗色模式联想起来,如果我们将整个界面换成黑夜模式的话,它会是这样的。imageimage更改主题颜色及暗色模式,我们
(二)SAP Group Reporting (GR) 核心子模块功能及数据流向架构解析
数据如何从子公司流转到合并报表的全过程,即数据采集→合并引擎→报表输出,特别是HANA内存计算如何优化传统ETL瓶颈。SAPGroupReporting(GR)核心模块功能及数据流向的架构解析,涵盖核心组件、数据处理流程和关键集成点,适用于S/4HANA1809+版本:一、核心功能模块概览模块功能关键事务码/FioriApp数据采集(DataCollection)整合子公司财务数据(SAP/非SA
9、汇编语言编程入门:从环境搭建到简单程序实现
神经网络酱
汇编语言 MEPIS GNU工具链
汇编语言编程入门:从环境搭建到简单程序实现1.数据存储介质问题解决在处理数据存储时,若要使用MEPIS系统,需确保有其可访问的存储介质。目前,MEPIS无法向采用NTFS格式(常用于Windows2000和XP工作站)的硬盘写入数据。不过,若硬盘采用FAT32格式,MEPIS就能进行写入操作。此外,MEPIS还能将文件写入软盘和大多数USB闪存驱动器。若工作站连接到局域网,还可通过FTP协议或挂载
月光下的罪恶(5)
允歌玖沐
5.被孤立顾纨是转校过来的,进入学校后,回头率很高“诶诶诶,你看那女生,哪个系的?”“不知道没见过。”“看那样,一看就是个胆小的货。”顾纨当做没听到,更狠的话她都听过,更何况女生们耍心眼?“他爸爸是做黑生意的,估计女儿也不是什么好的,你以后离他一家子远点。”她走向自己要上课的教室,一进门,所有人的目光看向她,顾纨若无其事的走进教室,开始上课。下课,一群人站起来,但是很显然,她周围的一圈人都不愿意和
day15|前端框架学习和算法
universe_01
前端 算法 笔记
T22括号生成先把所有情况都画出来,然后(在满足什么情况下)把不符合条件的删除。T78子集要画树状图,把思路清晰。可以用暴力法、回溯法和DFS做这个题DFS深度搜索:每个边都走完,再回溯应用:二叉树搜索,图搜索回溯算法=DFS+剪枝T200岛屿数量(非常经典BFS宽度把树状转化成队列形式,lambda匿名函数“一次性的小函数,没有名字”setup语法糖:让代码更简洁好写的语法ref创建:基本类型的
贝多芬诞辰250周年纪念
万千星河赴远方
就算不是古典音乐爱好者,你也一定听说过贝多芬。作为古典音乐史上最伟大的音乐家之一,他不仅是古典主义风格的集大成者,同时也是浪漫主义风格的开创者。贝多芬肖像画(1813年)贝多芬的一生共创作了9部交响曲、36首钢琴奏鸣曲、10部小提琴奏鸣曲、16首弦乐四重奏、1部歌剧及2部弥撒曲等等。数量虽然不及前辈海顿、莫扎特多,但他几乎改造了当时所有的音乐表达形式,赋予了它们全新的价值,对后世音乐的发展产生了极
IK分词
初心myp
实现简单的分词功能,智能化分词添加依赖配置:4.10.4org.apache.lucenelucene-core${lucene.version}org.apache.lucenelucene-analyzers-common${lucene.version}org.apache.lucenelucene-queryparser${lucene.version}org.apache.lucenel
三件事—小白猫·雨天·八段锦
咸鱼月亮
1.最近楼下出现一只非常漂亮的粘人小白猫,看着不像是流浪猫,非常亲人。眼睛比蓝球的还大,而且是绿色的,很漂亮。第一次遇到它,它就跟我到电梯口,如果我稍微招招手,肯定就跟我进电梯了。后来我喂过它几次,好可惜不能养它,一只蓝球就是我的极限了。2.下雨天就心烦,好奇怪。明明以前我超爱看窗外的雨和听雨声,看来近来的心情不够宁静了。3.最近在练八段锦,从第一次就爱上了这个运动,很轻松缓慢,但是却出汗。感觉可
25-1-2019
树藤与海岛呢
hello八月来报道了今天看到了一篇文章就只想记下那两句话:良田千顷不过一日三餐广夏万间只睡卧榻三尺大概的意思就是要珍惜当下不要等来不及的时候才珍惜分享今天的两餐最近没有时间运动呢下个月补回好了说完了哈哈goodnight图片发自App图片发自App
《极简思维》第三部分
小洋苏兮
整理你的人际关系如何改善人际关系?摘录:因为人际关系问题是人们生活中不快乐的主要原因。感想:感觉这个说的挺对,之前我总是埋头学习,不管舍友不管自己的合作伙伴的一些事情,但实际上,这学期关注了之后好多了摘录:“亲密关系与社交会让你健康而快乐。这是基础。太过于关注成就或不太关心人际关系的人都不怎么快乐。基本上来说,人类就是建立在人脉关系上的。”感想:但是如果有时想的太多就不太好,要以一个开放的心态跟别
力扣热题100-------54. 螺旋矩阵
海航Java之路
力扣 leetcode 矩阵 java
给你一个m行n列的矩阵matrix,请按照顺时针螺旋顺序,返回矩阵中的所有元素。示例1:输入:matrix=[[1,2,3],[4,5,6],[7,8,9]]输出:[1,2,3,6,9,8,7,4,5]示例2:输入:matrix=[[1,2,3,4],[5,6,7,8],[9,10,11,12]]输出:[1,2,3,4,8,12,11,10,9,5,6,7]提示:m==matrix.lengthn
我不懂什么是爱,但我给你全部我拥有的
香尧
因为怕黑,所以愿意陪伴在夜中行走的人,给他一点点的安全感。因为渴望温柔与爱,所以愿意为别的孩子付出爱与温柔。因为曾遭受侮辱和伤害,所以不以同样的方式施于其他人。如果你向别人出之以利刃,对方还了你爱与包容,真的不要感激他,真的不要赞美他。每一个被人伤害过的人心里都留下了一颗仇恨的种子,他也会想要有一天以眼还眼,以牙还牙。但他未让那颗种子生根发芽,他用一把心剑又一次刺向他自己,用他血荐仇恨,开出一朵温
你要记住,最重要的是:随时做好准备,为了你可能成为更好的自己,放弃现在的自己。
霖霖z
打卡人:周云日期:2018年11月09日【日精进打卡第180天】【知~学习】《六项精进》0遍共214遍《通篇》1遍共106遍《大学》2遍共347遍《坚强工作,温柔生活》ok《不抱怨的世界》104-108页《经典名句》你要记住,最重要的是:随时做好准备,为了你可能成为更好的自己,放弃现在的自己。【行~实践】一、修身:(对自己个人)1、坚持打卡二、齐家:(对家庭和家人)打扫卫生,接送孩子,洗衣做饭,陪
SpringMVC执行流程(原理),通俗易懂
国服冰
SpringMVC spring mvc
SpringMVC执行流程(原理),通俗易懂一、图解SpringMVC流程二、进一步理解Springmvc的执行流程1、导入依赖2、建立展示的视图3、web.xml4、spring配置文件springmvc-servlet5、Controller6、tomcat配置7、访问的url8、视图页面一、图解SpringMVC流程图为SpringMVC的一个较完整的流程图,实线表示SpringMVC框架提
C++ 计数排序、归并排序、快速排序
每天搬一点点砖
c++ 数据结构 算法
计数排序:是一种基于哈希的排序算法。他的基本思想是通过统计每个元素的出现次数,然后根据统计结果将元素依次放入排序后的序列中。这种排序算法适用于范围较小的情况,例如整数范围在0到k之间计数排序步骤:1初始化一个长度为最大元素值加1的计数数组,所有元素初始化为02遍历原始数组,将每个元素值作为索引,在计数数组中对应位置加13将数组清空4遍历计数器数组,按照数组中的元素个数放回到元数组中计数排序的优点和
现在发挥你的优势
爱生活的佑嘉
来和我做咨询的一些朋友,涉及到定位的,都会说,我不知道我的优势是什么,你能不能帮我看看?还有一些朋友,喜欢做各种测试来了解自己,测试过后,然并卵。今天,我想来聊聊优势,如何能了解自己的优势是什么。首先,我们要知道,如果要成为“不一般”的人,我们所做的事情,就要基于自身的优势。我做管理者十多年,看到每个员工都有不同的特长,有的擅长数字,有的擅长人际,有的擅长写作。这些知道自己优势并且在这方面刻意练习
2023-11-02
一帆f
发现浸润心田的感觉:今天一个机缘之下突然想分享我的婆媳关系,我一边分享一边回忆我之前和儿媳妇关系的微妙变化,特别是分享到我能感受到儿媳妇的各种美好,现在也能心平气和的和老公平等对话,看到自己看到老公,以己推人以人推己自然而然的换位思考,心中有一种美好的能量在涌动,一种浸润心田的感觉从心胸向全身扩散,美好极了……我很想记住这种感觉,赶紧把它写下来以留纪念,也就是当我看见他人的美好,美好的美妙的浸润心
贫穷家庭的孩子考上985以后会怎样?
Mellisa蜜思言
我出生在一个贫穷的农村家庭,据我妈说,我出生的时候才4斤多,而她生完我以后月子里就瘦到70斤。家里一直很穷,父母都是在菜市场卖菜的,家里还有几亩地种庄稼的。我很小开始就要去帮忙,暑假的生活就是帮忙去卖菜和割稻谷,那时候自己对于割稻谷这种事情有着莫名的恐惧,生怕自己长大以后还是每年都要过着割稻谷这种日子。父母因为忙于生计无暇顾及我的学习,幸好我因为看到他们这样子的生活,内心里有深深的恐惧感,驱使着我
实时数据流计算引擎Flink和Spark剖析
程小舰
flink spark 数据库 kafka hadoop
在过去几年,业界的主流流计算引擎大多采用SparkStreaming,随着近两年Flink的快速发展,Flink的使用也越来越广泛。与此同时,Spark针对SparkStreaming的不足,也继而推出了新的流计算组件。本文旨在深入分析不同的流计算引擎的内在机制和功能特点,为流处理场景的选型提供参考。(DLab数据实验室w.x.公众号出品)一.SparkStreamingSparkStreamin
48. 旋转图像 - 力扣(LeetCode)
Fiee-77
# 数组 leetcode 算法 python 数据结构 数组
题目:给定一个n×n的二维矩阵matrix表示一个图像。请你将图像顺时针旋转90度。你必须在原地旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要使用另一个矩阵来旋转图像。示例1:输入:matrix=[[1,2,3],[4,5,6],[7,8,9]]输出:[[7,4,1],[8,5,2],[9,6,3]]示例2:输入:matrix=[[5,1,9,11],[2,4,8,10],[13,3,6,
rust的指针作为函数返回值是直接传递,还是先销毁后创建?
wudixiaotie
返回值
这是我自己想到的问题,结果去知呼提问,还没等别人回答, 我自己就想到方法实验了。。
fn main() {
let mut a = 34;
println!("a's addr:{:p}", &a);
let p = &mut a;
println!("p's addr:{:p}", &a
java编程思想 -- 数据的初始化
百合不是茶
java 数据的初始化
1.使用构造器确保数据初始化
/*
*在ReckInitDemo类中创建Reck的对象
*/
public class ReckInitDemo {
public static void main(String[] args) {
//创建Reck对象
new Reck();
}
}
[航天与宇宙]为什么发射和回收航天器有档期
comsci
地球的大气层中有一个时空屏蔽层,这个层次会不定时的出现,如果该时空屏蔽层出现,那么将导致外层空间进入的任何物体被摧毁,而从地面发射到太空的飞船也将被摧毁...
所以,航天发射和飞船回收都需要等待这个时空屏蔽层消失之后,再进行
&
linux下批量替换文件内容
商人shang
linux 替换
1、网络上现成的资料
格式: sed -i "s/查找字段/替换字段/g" `grep 查找字段 -rl 路径`
linux sed 批量替换多个文件中的字符串
sed -i "s/oldstring/newstring/g" `grep oldstring -rl yourdir`
例如:替换/home下所有文件中的www.admi
网页在线天气预报
oloz
天气预报
网页在线调用天气预报
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transit
SpringMVC和Struts2比较
杨白白
springMVC
1. 入口
spring mvc的入口是servlet,而struts2是filter(这里要指出,filter和servlet是不同的。以前认为filter是servlet的一种特殊),这样就导致了二者的机制不同,这里就牵涉到servlet和filter的区别了。
参见:http://blog.csdn.net/zs15932616453/article/details/8832343
2
refuse copy, lazy girl!
小桔子
copy
妹妹坐船头啊啊啊啊!都打算一点点琢磨呢。文字编辑也写了基本功能了。。今天查资料,结果查到了人家写得完完整整的。我清楚的认识到:
1.那是我自己觉得写不出的高度
2.如果直接拿来用,很快就能解决问题
3.然后就是抄咩~~
4.肿么可以这样子,都不想写了今儿个,留着作参考吧!拒绝大抄特抄,慢慢一点点写!
apache与php整合
aichenglong
php apache web
一 apache web服务器
1 apeche web服务器的安装
1)下载Apache web服务器
2)配置域名(如果需要使用要在DNS上注册)
3)测试安装访问http://localhost/验证是否安装成功
2 apache管理
1)service.msc进行图形化管理
2)命令管理,配
Maven常用内置变量
AILIKES
maven
Built-in properties
${basedir} represents the directory containing pom.xml
${version} equivalent to ${project.version} (deprecated: ${pom.version})
Pom/Project properties
Al
java的类和对象
百合不是茶
JAVA面向对象 类 对象
java中的类:
java是面向对象的语言,解决问题的核心就是将问题看成是一个类,使用类来解决
java使用 class 类名 来创建类 ,在Java中类名要求和构造方法,Java的文件名是一样的
创建一个A类:
class A{
}
java中的类:将某两个事物有联系的属性包装在一个类中,再通
JS控制页面输入框为只读
bijian1013
JavaScript
在WEB应用开发当中,增、删除、改、查功能必不可少,为了减少以后维护的工作量,我们一般都只做一份页面,通过传入的参数控制其是新增、修改或者查看。而修改时需将待修改的信息从后台取到并显示出来,实际上就是查看的过程,唯一的区别是修改时,页面上所有的信息能修改,而查看页面上的信息不能修改。因此完全可以将其合并,但通过前端JS将查看页面的所有信息控制为只读,在信息量非常大时,就比较麻烦。
AngularJS与服务器交互
bijian1013
JavaScript AngularJS $http
对于AJAX应用(使用XMLHttpRequests)来说,向服务器发起请求的传统方式是:获取一个XMLHttpRequest对象的引用、发起请求、读取响应、检查状态码,最后处理服务端的响应。整个过程示例如下:
var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange
[Maven学习笔记八]Maven常用插件应用
bit1129
maven
常用插件及其用法位于:http://maven.apache.org/plugins/
1. Jetty server plugin
2. Dependency copy plugin
3. Surefire Test plugin
4. Uber jar plugin
1. Jetty Pl
【Hive六】Hive用户自定义函数(UDF)
bit1129
自定义函数
1. 什么是Hive UDF
Hive是基于Hadoop中的MapReduce,提供HQL查询的数据仓库。Hive是一个很开放的系统,很多内容都支持用户定制,包括:
文件格式:Text File,Sequence File
内存中的数据格式: Java Integer/String, Hadoop IntWritable/Text
用户提供的 map/reduce 脚本:不管什么
杀掉nginx进程后丢失nginx.pid,如何重新启动nginx
ronin47
nginx 重启 pid丢失
nginx进程被意外关闭,使用nginx -s reload重启时报如下错误:nginx: [error] open() “/var/run/nginx.pid” failed (2: No such file or directory)这是因为nginx进程被杀死后pid丢失了,下一次再开启nginx -s reload时无法启动解决办法:nginx -s reload 只是用来告诉运行中的ng
UI设计中我们为什么需要设计动效
brotherlamp
UI ui教程 ui视频 ui资料 ui自学
随着国际大品牌苹果和谷歌的引领,最近越来越多的国内公司开始关注动效设计了,越来越多的团队已经意识到动效在产品用户体验中的重要性了,更多的UI设计师们也开始投身动效设计领域。
但是说到底,我们到底为什么需要动效设计?或者说我们到底需要什么样的动效?做动效设计也有段时间了,于是尝试用一些案例,从产品本身出发来说说我所思考的动效设计。
一、加强体验舒适度
嗯,就是让用户更加爽更加爽的用你的产品。
Spring中JdbcDaoSupport的DataSource注入问题
bylijinnan
java spring
参考以下两篇文章:
http://www.mkyong.com/spring/spring-jdbctemplate-jdbcdaosupport-examples/
http://stackoverflow.com/questions/4762229/spring-ldap-invoking-setter-methods-in-beans-configuration
Sprin
数据库连接池的工作原理
chicony
数据库连接池
随着信息技术的高速发展与广泛应用,数据库技术在信息技术领域中的位置越来越重要,尤其是网络应用和电子商务的迅速发展,都需要数据库技术支持动 态Web站点的运行,而传统的开发模式是:首先在主程序(如Servlet、Beans)中建立数据库连接;然后进行SQL操作,对数据库中的对象进行查 询、修改和删除等操作;最后断开数据库连接。使用这种开发模式,对
java 关键字
CrazyMizzz
java
关键字是事先定义的,有特别意义的标识符,有时又叫保留字。对于保留字,用户只能按照系统规定的方式使用,不能自行定义。
Java中的关键字按功能主要可以分为以下几类:
(1)访问修饰符
public,private,protected
p
Hive中的排序语法
daizj
排序 hive order by DISTRIBUTE BY sort by
Hive中的排序语法 2014.06.22 ORDER BY
hive中的ORDER BY语句和关系数据库中的sql语法相似。他会对查询结果做全局排序,这意味着所有的数据会传送到一个Reduce任务上,这样会导致在大数量的情况下,花费大量时间。
与数据库中 ORDER BY 的区别在于在hive.mapred.mode = strict模式下,必须指定 limit 否则执行会报错。
单态设计模式
dcj3sjt126com
设计模式
单例模式(Singleton)用于为一个类生成一个唯一的对象。最常用的地方是数据库连接。 使用单例模式生成一个对象后,该对象可以被其它众多对象所使用。
<?phpclass Example{ // 保存类实例在此属性中 private static&
svn locked
dcj3sjt126com
Lock
post-commit hook failed (exit code 1) with output:
svn: E155004: Working copy 'D:\xx\xxx' locked
svn: E200031: sqlite: attempt to write a readonly database
svn: E200031: sqlite: attempt to write a
ARM寄存器学习
e200702084
数据结构 C++ c C# F#
无论是学习哪一种处理器,首先需要明确的就是这种处理器的寄存器以及工作模式。
ARM有37个寄存器,其中31个通用寄存器,6个状态寄存器。
1、不分组寄存器(R0-R7)
不分组也就是说说,在所有的处理器模式下指的都时同一物理寄存器。在异常中断造成处理器模式切换时,由于不同的处理器模式使用一个名字相同的物理寄存器,就是
常用编码资料
gengzg
编码
List<UserInfo> list=GetUserS.GetUserList(11);
String json=JSON.toJSONString(list);
HashMap<Object,Object> hs=new HashMap<Object, Object>();
for(int i=0;i<10;i++)
{
进程 vs. 线程
hongtoushizi
线程 linux 进程
我们介绍了多进程和多线程,这是实现多任务最常用的两种方式。现在,我们来讨论一下这两种方式的优缺点。
首先,要实现多任务,通常我们会设计Master-Worker模式,Master负责分配任务,Worker负责执行任务,因此,多任务环境下,通常是一个Master,多个Worker。
如果用多进程实现Master-Worker,主进程就是Master,其他进程就是Worker。
如果用多线程实现
Linux定时Job:crontab -e 与 /etc/crontab 的区别
Josh_Persistence
linux crontab
一、linux中的crotab中的指定的时间只有5个部分:* * * * *
分别表示:分钟,小时,日,月,星期,具体说来:
第一段 代表分钟 0—59
第二段 代表小时 0—23
第三段 代表日期 1—31
第四段 代表月份 1—12
第五段 代表星期几,0代表星期日 0—6
如:
*/1 * * * * 每分钟执行一次。
*
KMP算法详解
hm4123660
数据结构 C++ 算法 字符串 KMP
字符串模式匹配我们相信大家都有遇过,然而我们也习惯用简单匹配法(即Brute-Force算法),其基本思路就是一个个逐一对比下去,这也是我们大家熟知的方法,然而这种算法的效率并不高,但利于理解。
假设主串s="ababcabcacbab",模式串为t="
枚举类型的单例模式
zhb8015
单例模式
E.编写一个包含单个元素的枚举类型[极推荐]。代码如下:
public enum MaYun {himself; //定义一个枚举的元素,就代表MaYun的一个实例private String anotherField;MaYun() {//MaYun诞生要做的事情//这个方法也可以去掉。将构造时候需要做的事情放在instance赋值的时候:/** himself = MaYun() {*
Kafka+Storm+HDFS
ssydxa219
storm
cd /myhome/usr/stormbin/storm nimbus &bin/storm supervisor &bin/storm ui &Kafka+Storm+HDFS整合实践kafka_2.9.2-0.8.1.1.tgzapache-storm-0.9.2-incubating.tar.gzKafka安装配置我们使用3台机器搭建Kafk
Java获取本地服务器的IP
中华好儿孙
java Web 获取服务器ip地址
System.out.println("getRequestURL:"+request.getRequestURL());
System.out.println("getLocalAddr:"+request.getLocalAddr());
System.out.println("getLocalPort:&quo