文档库 最新最全的文档下载
当前位置:文档库 › dom树

dom树

dom树
dom树

1.创建元素的方法
1.1 创建一个 form 和一个文本框
functionCreateForm() { var f = document.createElement("form"); var i = document.createElement("input"); //给 form 添加属性 f.setAttribute("name","myForm"); //给 inout 添加属性 i.setAttribute("name","user"); i.setAttribute("value","user"); //将 input 赋给 form f.appendChild(i); document.body.appendChild(f); }
1.2 强大的 innerHTML:创建完整的表单
functionCreateAll() { varodiv = document.createElement("div"); odiv.innerHTML = "


"; odiv.innerHTML += "姓名:
"; odiv.innerHTML += "密码:
"; odiv.innerHTML += "性别:
"; odiv.innerHTML += "爱好:篮球足球
"; odiv.innerHTML += " 国籍 :
"; odiv.innerHTML += "描述:
"; odiv.innerHTML += ""; document.body.appendChild(odiv); }

1.3 在指定的位置创建对象:强大的 div
functionCreateAllByDIV(divid) { //得到 DIV 对象 varodiv = document.getElementById(divid); odiv.innerHTML = "
"; odiv.innerHTML += "姓名:
"; odiv.innerHTML += "密码:
"; odiv.innerHTML += "性别:
"; odiv.innerHTML += "爱好:篮球足球
"; odiv.innerHTML += " 国籍 :
"; odiv.innerHTML += "描述:
"; odiv.innerHTML += ""; }
2.options
2.1 取值:其中 from 是 select 元素的 ID 值
function _4() { var left = document.getElementById('from'); var right = document.getElementById('to'); var option = left.options; for(i=option.length-1;i>=0;i--) { if(option[i].selected) { right.add(new Option(option[i].innerText,option[i].innerText)); left.removeChild(option[i]); } } }

2.2 add 方法
add() 方法用于向 也要配合,不然会打开一个新的 IE 窗口,然后再关掉的。 七、 showModalDialog 和 showModelessDialog 数据传递技巧(例子用的是 showModalDialog 函数,showModelessDialog 函数的用法一样) 1) 父窗体向打开的窗体传递数据一般使用 url 参数传递 2) 打开的窗体,即子窗体向父窗体 进行数据传递有两种方法 (1) 第一种称为“函数法” ,同调用一个函数并返回值一样 可以通过在被调用的页面(子页面)使用 window.returnValue 来设置返回值,返回值可以是 任何值或对象,调用页面(父页面)直接获取返回值即可。 //父窗体 js,直接通过函数获取 返回值 function openModalWindow(){ var returnValue = window.showModalDialog("sonPage.aspx"); alert(returnValue); } // 子 窗 体 js , 通 过 window.returnvalue 来 设 置 返 回 值 function setReturnFatherPageValue(){ window.returnValue = true; } (2) 第二种称为“引用法” ,通过传递父窗体的引用,我们可以操作父窗体上的所有东西 要 使用引用法就必须在打开子窗体时将父窗体作为一个参数传递给子窗体, 而在子窗体可以通 过 window.dialogArguments 获取到传递过来的父窗体的引用。//父窗体 js, 将整个父 window 作为参数传递给子窗体 function openModalWindow(){ window.showModalDialog("sonPage.aspx", window); } //子窗体 js,通过 window.dialogArguments 可以访问父 window 中的所有元素,它在这里 代表了父 window 对象 function openModalWindow(){ var txt = window.dialogArguments.document.getElementByIdx("txt"); var lab = wind ow.dialogArguments.document.getElementByIdx("lab"); txt.value = "sonPageChangedValue "; lab.value = "isTheSame"; } 八、 控制弹出窗体的样式 1) dialogHeight: 对 话 框 高 度 , 不 小 于 100px 2) dialogWidth: 对 话 框 宽 度。 3) dialogLeft: 离屏幕左的距离。 4) dialogTop: 离屏幕上的距离。 5) center: { yes | no | 1 | 0 } : 是 否 居 中 , 默 认 yes , 但 仍 可 以 指 定 高 度 和 宽

度。 6) help: {yes | no | 1 | 0 }: 是否显示帮助按钮,默认 yes。 7) resizable: {yes | no | 1 | 0 } [IE5+] : 是 否 可 被 改 变 大 小 。 默 认 no 。 8) status:{yes | no | 1 | 0 } [IE5+] : 是 否 显 示 状 态 栏 。 默 认 为 yes[ Modeless] 或 no[Modal]。 9) scroll:{ yes | no | 1 | 0 | on | off }:是否显示滚动条。默认为 yes。 举例如下: window.showModalDialog("sonPage.aspx", "", "dialogHeight=350px;dialogwidth=410px;dialogLeft=0;dialogTop=25;help=no;resizable=no;status =no;scrollbars=no;"); 或 window.showModalDialog("sonPage.aspx", window, "dialogHeight=350px;dialogwidth=500px;help=no;scrollbars=no;"); 都可 九、 窗口高度自适应,这个需要在每个弹出框加载的页面放置,比较麻烦,而且不完善, 使用时请调试好 然后如下设置即可:

最小生成树实验报告

数据结构课程设计报告题目:最小生成树问题 院(系):计算机工程学院 学生姓名: 班级:学号: 起迄日期: 指导教师: 2011—2012年度第 2 学期 一、需求分析

1.问题描述: 在n个城市之间建设网络,只需保证连通即可,求最经济的架设方法。存储结构采用多种。求解算法多种。 2.基本功能 在n个城市之间建设网络,只需要架设n-1条线路,建立最小生成树即可实现最经济的架设方法。 程序可利用克鲁斯卡尔算法或prim算法生成最小生成树。 3.输入输出 以文本形式输出最小生成树,同时输出它们的权值。通过人机对话方式即用户通过自行选择命令来输入数据和生成相应的数据结果。 二、概要设计 1.设计思路: 因为是最小生成树问题,所以采用了课本上介绍过的克鲁斯卡尔算法和 prim算法两种方法来生成最小生成树。根据要求,需采用多种存储结构,所以我选择采用了邻接表和邻接矩阵两种存储结构。 2.数据结构设计: 图状结构: ADT Graph{ 数据对象V:V是具有相同特性的数据元素的集合,称为顶点集。 数据关系R:R={VR} VR={|v,w∈V且P(v,w),表示从v到w的弧, 谓词P(v,w)定义了弧的意义或信息} 基本操作: CreateGraph( &G, V, VR ) 初始条件:V是图的顶点集,VR是图中弧的集合。 操作结果:按V和VR的定义构造图G。 DestroyGraph( &G ) 初始条件:图G存在。 操作结果:销毁图G。 LocateVex( G, u ) 初始条件:图G存在,u和G中顶点有相同特征。 操作结果:若G中存在顶点u,则返回该顶点在图中位置;否则返 回其它信息。 GetVex( G, v ) 初始条件:图G存在,v是G中某个顶点。

jquery中获得jq对象(dom对象集合)的方法

jquery对象访问。 Jq对象(dom对象集合)的Eq方法和jq选择器返回的都是是jquery对象,只能使用jquery 方法;Jq对象(dom集合)的get方法和“jq对象[i]”返回的是dom元素对象,只能使用dom方法。 Jq对象的find(selector |obj|ele)和children用来查找子对象和后代对象 Jq对象的find方法用于查找当前jq对象(dom集合)的后代对象,Jq对象的children方法用于查找当前jq对象(dom集合)的子对象对象。这两个方法都只能使用jq对象(dom对象集合)来调用,并且他们返回的也是jq对象。 Jq手册中的api方法都是js对象(dom集合)对象或者$对象的方法。只能使用jq对象(dom 集合)或者$来调用。如each,attr、val,find,children等等 Jq对象的index方法搜索当前集合中的匹配的元素,并返回相应元素的索引值,从0开始计数 如果不给index方法传递参数,那么返回值就是这个jQuery对象集合中第一个元素相对于其同辈元素的位置。 如果参数是一组DOM元素或者jQuery对象,那么返回值就是传递的元素相对于原先集合的位置。 如果参数是一个选择器,那么返回值就是原先元素相对于选择器匹配元素中的位置。如果找不到匹配的元素,则返回-1。 Jq选择器 1、个基本选择器: 基本选择器可以拼接一起来选择某组元素,原则: 对同一个元素描述的多个基本选择器中间没有任何间隔。 如div[name=aa]表示name属性等于aa的div元素(元素名选择器div和属性选择器[name=aa]中间没有任何间隔)。 div.cval表示class值等于cval的div元素,表示class值等于cval是div元素(类选择器.cval 和元素名选择器div之间同样没有任何间隔) #id值 .class值 元素名 //属性 [attr]具有aaa属性

50个实用的JQUERY案例

jquery案例 jquery案例1.如何创建嵌套的过滤器: 1.//允许你减少集合中的匹配元素的过滤器, 2.//只剩下那些与给定的选择器匹配的部分。在这种情况下, 3.//查询删除了任何没(:not)有(:has) 4.//包含class为“selected”(.selected)的子节点。 5..filter(":not(:has(.selected))") jquery案例2.如何重用元素搜索 1.var allItems=$("div.item"); 2.var keepList=$("div#container1div.item"); 3.//现在你可以继续使用这些jQuery对象来工作了。例如, 4.//基于复选框裁剪“keep list”,复选框的名称 5.//符合 6.

class names: 7.$(formToLookAt+"input:checked").each(function(){ 8.keepList=keepList.filter("."+$(this).attr("name")); 9.}); 10.
jquery案例3.任何使用has()来检查某个元素是否包含某个类或是元素: 1.//jQuery1.4.*包含了对这一has方法的支持。该方法找出 2.//某个元素是否包含了其他另一个元素类或是其他任何的 3.//你正在查找并要在其之上进行操作的东东。 4.$("input").has(".email").addClass("email_icon"); jquery案例4.如何使用jQuery来切换样式表 1.//找出你希望切换的媒体类型(media-type),然后把href设置成新的样式表。 2.$('link[media='screen']').attr('href','Alternative.css'); jquery案例5.如何限制选择范围(基于优化目的): 1.//尽可能使用标签名来作为类名的前缀, 2.//这样jQuery就不需要花费更多的时间来搜索 3.//你想要的元素。还要记住的一点是, 4.//针对于你的页面上的元素的操作越具体化, 5.//就越能降低执行和搜索的时间。

07-生成树实验

1. 实验报告如有雷同,雷同各方当次实验成绩均以0分计。 2. 当次小组成员成绩只计学号、姓名登录在下表中的。 3. 在规定时间内未上交实验报告的,不得以其他方式补交,当次成绩按0分计。 4. 实验报告文件以PDF 格式提交。 【实验题目】生成树协议 【实验目的】理解快速生成树协议的配置及原理。使网络在有冗余链路的情况下避免环路的产生,避免广播风暴等。 【实验内容】 (1)完成实验教程实例3-8的实验,回答实验提出的问题及实验思考。(P117) (2)抓取生成树协议数据包,分析桥协议数据单元(BPDU )。 (3)在实验设备上查看VLAN 生成树,并学会查看其它相关重要信息。 【实验要求】 一些重要信息需给出截图。 注意实验步骤的前后对比! 【实验记录】(如有实验拓扑请自行画出, 要求自行画出拓扑图) (1) 实例3-8 实验拓扑图如下: 院系 班 级 组长 学号 学生 实验分工 陈 刘 3-8 、 宗良 警示

步骤0: 将PC1和PC2配置好IP地址和掩码后按照拓扑图连接实验设备。 在PC1上启动Wireshark 软件观察包的数量变化如下: 此时已经产生了广播风暴。 两台交换机此时的生成树配置信息如下: 无生成树配置信息。 用PC1pingPC2时包增长情况如下:

可见此时包增长的更快,已经产生广播风暴,但是PC并未发生死锁。步骤1: 配置交换机A: 步骤2: 配置交换机B: 步骤3: 配置两交换机的快速生成树协议:

再按照拓扑图连接实验设备,此时包增长情况如下: 此时两PC间可以相互ping通,且无广播风暴。由此可见生成树协议的作用为避免网络中存在交换环路的时候产生广播风暴,确保在网络中有环路时自动切断环路。

4:JavaScriptjavaDOM

JavaScript制作页面特效课后练习 1.在某页面中有一个图片和五个超链接,如下图所示,单击不同的数字超链接显示不同的 图片: 图1 图片幻灯片显示效果 提示: (1)默认显示一个图片,五个超链接调用同一个传参函数,参数设置为显示图片的名称。 (2)使用“对象名.属性值”或setAttribute()的方式改变图片的名称。 2.做一个模仿删除用户的页面,功能如下: 默认情况下,在一个Table 里面放置若干用户信息,后面有“删除”链接:

图2 模仿删除用户的页面效果1 点击“删除”链接,弹出对话框,提示用户是否继续操作: 图3 模仿删除用户的页面效果2 用户点击确定后,要删除的一行,自动加上删除线,表示处于删除状态: 图4 模仿删除用户的页面效果3 提示: (1)使用confirm 弹出确认框,如果用户点击“确定”,则返回true,进行下一步操作; (2)定义一个类样式,用来标识删除状态,如果用户点击了“确定”按钮之后,该行所对 应的tr 标签,自动应用该类样式。 3.做一个横向导航菜单,并且每一项均包含一个二级的菜单,效果图如下:

图5 横向导航菜单 当鼠标不在菜单上时,二级菜单不显示,当鼠标移动到任一项上时,显示该项对应的二级菜 单。 提示: (1)使用对象的display 属性可以控制对象的显示与隐藏; (2)使用相对定位/绝对定位来控制二级菜单的显示位置; (3)使用鼠标的两个事件(onmouseove/onmouseout)来触发控制函数。 4.做一个横向不间断滚动的特效,效果图如下:

图6 图片横向滚动特效 要求:图片始终横向向左滚动,并且每一张图片首尾相连,不存在间断。 提示: (1)若要使图片不间断,则需要将图片列表重复一次,这样第一遍的末尾图片和第二遍的 开始图片就能相连了,即使用innerHTML 属性让图片内容翻倍;(2)使用setInterval()方法,可以控制一个函数每隔多少毫秒执行一次; (3)使用绝对定位与相对定位结合,可以使图片所在的层相对于父层的位置可控,方便随 着计时器的执行,left 的值递减;

07_生成树实验

0分计。 4. 实验报告文件以PDF 格式提交。 【实验题目】生成树协议 【实验目的】理解快速生成树协议的配置及原理。使网络在有冗余链路的情况下避免环路的产生,避免广播风暴等。 【实验内容】 (1)完成实验教程实例3-8的实验,回答实验提出的问题及实验思考。(P117) (2)抓取生成树协议数据包,分析桥协议数据单元(BPDU )。 (3)在实验设备上查看VLAN 生成树,并学会查看其它相关重要信息。 【实验要求】 一些重要信息需给出截图。 注意实验步骤的前后对比! 【实验记录】(如有实验拓扑请自行画出, 要求自行画出拓扑图) (1) 实例3-8 实验拓扑图如下:

步骤0: 将PC1和PC2配置好IP地址和掩码后按照拓扑图连接实验设备。 在PC1上启动Wireshark 软件观察包的数量变化如下: 此时已经产生了广播风暴。 两台交换机此时的生成树配置信息如下: 无生成树配置信息。 用PC1pingPC2时包增长情况如下:

可见此时包增长的更快,已经产生广播风暴,但是PC并未发生死锁。步骤1: 配置交换机A: 步骤2: 配置交换机B: 步骤3: 配置两交换机的快速生成树协议:

再按照拓扑图连接实验设备,此时包增长情况如下: 此时两PC间可以相互ping通,且无广播风暴。由此可见生成树协议的作用为避免网络中存在交换环路的时候产生广播风暴,确保在网络中有环路时自动切断环路。

步骤4:验证测试 SwitchA的生成树信息: SwitchB的生成树信息:

步骤5:设置交换机的优先级 将SwitchA的优先级设置为4096 步骤6: 验证SwitchA的优先级 当两个端口都连在一个共享介质上,交换机会选择一个高优先级的端口进入

Javascript基础

表JS基本类型有什么?引用类型有什么? 基本类型:number,string,boolean,undefined,null 引用类型:基本类型以外的都是引用类型,如object/array/function/date等等 关于基本类型与引用类型的区别可以详细看看@Naraku_的这篇文章: [ JS 进阶] 基本类型引用类型简单赋值对象引用 概况起来有这么几个要点: 1.我们无法给基本类型的对象添加属性和方法; var m1 = 123; https://www.wendangku.net/doc/7714198911.html, = 'abc'; console.log(https://www.wendangku.net/doc/7714198911.html,); //输出:undefined 2.基本类型对象的比较是值比较,而引用类型对象的比较是引用比较; var m1 = 123, m2 = 123; console.log(m1 === m2); //输出:true var o1 = {}, o2 = {}; console.log(o1 === o2); //输出:false 3.基本类型对象是存储在栈内存中的,而引用类型对象其实是一个存储在栈内存中的一个堆内存地址。 4.基本类型对象赋值时(执行=号操作),是在栈内存中创建一个新的空间,然后将值复制一份到新的空间里。 5.引用类型对象赋值时(执行=号操作),也是在栈内存中复制一份一样的值,但这个值是一个堆内存地址,所以被赋值的那个对象跟前者其实是一个对象。 var o1 = {}; var o2 = o1; https://www.wendangku.net/doc/7714198911.html, = 'abc';console.log(https://www.wendangku.net/doc/7714198911.html,); // --> abc console.log(https://www.wendangku.net/doc/7714198911.html,); // --> abc o2.age = '123';console.log(o1.age); // --> 123console.log(o2.age); // --> 123 JS中的常见对置对象类

HTML DOM简要教程

第一部分HTML DOM简介 1 DOM简介 HTML文档对象模型 HTML文档对象模型(Document Object Model)定义了访问和处理 HTML 文档的标准方法。HTML DOM 把 HTML 文档呈现为带有元素、属性和文本的树结构(节点树)。 什么是 DOM? 通过JavaScript,您可以重构整个HTML文档。您可以添加、移除、改变或重排页面上的项目。 要改变页面的某个东西,JavaScript 就需要获得对 HTML 文档中所有元素进行访问的入口。这个入口,连同对 HTML 元素进行添加、移动、改变或移除的方法和属性,都是通过文档对象模型来获得的(DOM)。 DOM 被分为不同的部分(核心、XML及HTML)和级别(DOM Level 1/2/3) DOM 可被 JavaScript 用来读取、改变 HTML、XHTML 以及 XML 文档。 ?Core DOM 定义了一套标准的针对任何结构化文档的对象 ?XML DOM定义了一套标准的针对XML 文档的对象 ?HTML DOM定义了一套标准的针对HTML 文档的对象 2 DOM节点 节点 根据 DOM,HTML 文档中的每个成分都是一个节点。

DOM 是这样规定的: ?整个文档是一个文档节点 ?每个HTML 标签是一个元素节点 ?包含在HTML 元素中的文本是文本节点 ?每一个HTML 属性是一个属性节点 ?注释属于注释节点 Node层次 节点彼此都有等级关系。 HTML 文档中的所有节点组成了一个文档树(或节点树)。HTML 文档中的每个元素、属性、文本等都代表着树中的一个节点。树起始于文档节点,并由此继续伸出枝条,直到处于这棵树最低级别的所有文本节点为止。 下面这个图片表示一个文档树(节点树): 3 DOM节点树 文档树(节点数)

前端面试中常见Vue知识点整理

看看面试题,只是为了查漏补缺,看看自己那些方面还不懂。切记不要以为背了面试题,就万事大吉了,最好是理解背后的原理,这样面试的时候才能侃侃而谈。 不然,稍微有水平的面试官一看就能看出,是否有真才实学还是刚好背中了这道面试题。 一、对于MVVM的理解? MVVM 是Model-View-ViewModel 的缩写。 ?Model代表数据模型,也可以在Model中定义数据修改和操作的业务逻辑。 ?View代表UI 组件,它负责将数据模型转化成UI 展现出来。 ?ViewModel监听模型数据的改变和控制视图行为、处理用户交互,简单理解就是一个同步View 和Model的对象,连接Model和View。 在MVVM架构下,View 和Model 之间并没有直接的联系,而是通过ViewModel 进行交互,Model 和ViewModel 之间的交互是双向的,因此View 数据的变化会同步到Model中,而Model 数据的变化也会立即反应到View 上。 ViewModel通过双向数据绑定把View 层和Model 层连接了起来,而View 和Model 之间的同步工作完全是自动的,无需人为干涉,因此开发者只需关注业务逻辑,不需要手动操作DOM,不需要关注数据状态的同步问题,复杂的数据状态维护完全由MVVM 来统一管理。 二、Vue的生命周期 beforeCreate(创建前),在数据观测和初始化事件还未开始 created(创建后),完成数据观测,属性和方法的运算,初始化事件,$el 属性还没有显示出来 beforeMount(载入前),在挂载开始之前被调用,相关的render函数首次被调用。实例已完成以下的配置:编译模板,把data里面的数据和模板生成html。 注意此时还没有挂载html到页面上。 mounted(载入后),在el 被新创建的vm.$el 替换,并挂载到实例上去之后调用。实例已完成以下的配置:用上面编译好的html内容替换el属性指向的DOM 对象。完成模板中的html渲染到html页面中。此过程中进行ajax交互。 beforeUpdate(更新前),在数据更新之前调用,发生在虚拟DOM重新渲染和打补丁之前。可以在该钩子中进一步地更改状态,不会触发附加的重渲染过程。

生成树STP基本概念与实验

二层交换:生成树STP基本概念与实验 如果你把两台傻瓜式交换机之间连两根网线,那么这俩交换机就会出现环路从而产生广播风暴。 可能你会觉得好笑,但实际工作中,我却碰到了,一些不懂网络的装修包工头,就会这样做。 ==================================================================== 生成树就是为了让交换网络中防环而出现的。 生成树最原始的版本是802.1d,也就是STP(Spanning Tree Protocol), 但这个版本的标准是所有VLAN共用一个生成树,所以也叫CST(Common Spanning Tree) 思科在此基础上增强了一下,发布了PVST+(Per Vlan Spanning Tree) 802.1d的下一个版本是802.1w,也就是RSTP(Rapid STP),但还是共用生成树,搞不懂IEEE不长点记性。 于是思科又搞了一下,发布了PVRST+ IEEE又基于思科的MISTP的方案,发布了802.1s(MSTP),这个就屌爆了,之后再说为何这么屌,凡是大一点的交换网络都用MSTP。 ===================================================================== STP的基础 要学习更高级的RSTP/MST,还是需要STP的基础,尽管现在已经很少用到STP。 STP的工作流程

1. 在整个交换网段里选择一台做根桥,这根桥就是整棵树的根部,所有其他交换机就选一条到这个根桥的最短路径,其余的路径阻塞掉。所有交换机中桥优先级最低的成为根桥。 2. 选择所有非根桥交换机的根端口,就是那条最短路径的接口。如果有超过1条等价路径,则选择对端指定端口优先级最低的本地端口(有点绕口,通过实验来说明) 3. 选择各网段的指定端口。这个网段其实就是指一根链接,其中一头一定是指定端口,另外一头可能是根端口,也可能是非指定端口。 根端口——只出现在非根桥交换机上,就是到达根桥最短路径的那个接口。如下图,SW1被设置较低的桥优先级成为了根桥,注意,根桥上是没有根端口的。根端口转发数据帧。 指定端口(和非指定端口)——所有交换机上都可能有,根桥上的所有端口都是指定端口(接终端的那些不算啊),非根桥之间的指定端口通过判断优先级,谁低谁是指定端口,对端是非指定端口或根端口,非指定端口禁止转发数据帧,不过仍会监听BPDU。 如下图,SW1上的接口都是指定端口,SW2/3上离根桥最短路径的端口就是根端口。而SW2<->SW3之间的链路,记住,一条链接上一定有一头是指定端口,另外一头如果不是根端口,那就一定是非指定端口。那哪边是指定端口呢?哪边的桥优先级更低,哪边就是指定端口。而SW3上非指定端口被阻塞了,所以SW2<->SW3之间的链路其实是被阻塞了不能用于转发数据。

js基础术语和概念总结

JavaScript基础术语和概念总结 一、什么是JavaScript ? JavaScript 是一种基于对象(Object)和事件驱动(Event Driven)并具有安全性能的脚本语言。使用它的目的是与HTML超文本标记语言、Java 脚本语言(Java 小程序)一起实现在一个Web页面中链接多个对象,与Web客户交互作用。它的出现使得信息和用户之间不仅只是一种显示和浏览的关系,而是实现了一种实时的、动态的、可交式的表达能力。 二、JavaScript的特点 JavaScript 是一种基于对象和事件驱动并具有相对安全性的客户端脚本语言,主要用于创建具有交互性较强的动态页面。其具有以下特点: 1)基于对象:JavaScript 是基于对象的脚本编程语言,能通过DOM(文档结构模型)及自身提供的对象及操作方法来实现所需的功能。 2)事件驱动:JavaScript 采用事件驱动方式,能响应键盘事件、鼠标事件及浏览器窗口事件等,并执行指定的操作。 3)解释性语言:JavaScript 是一种解释性脚本语言,无需专门编译器编译,而是在嵌入JavaScript 脚本的HTML 文档载入时被浏览器逐行地解释,大量节省客户端与服 务器端进行数据交互的时间。 4)实时性:JavaScript 事件处理是实时的,无须经服务器就可以直接对客户端的事件做出响应,并用处理结果实时更新目标页面。 5)动态性:JavaScript 提供简单高效的语言流程,灵活处理对象的各种方法和属性,同时及时响应文档页面事件,实现页面的交互性和动态性。 6)跨平台:JavaScript 脚本的正确运行依赖于浏览器,而与具体的操作系统无关。只要客户端装有支持JavaScript 脚本的浏览器,JavaScript 脚本运行结果就能正确反 映在客户端浏览器平台上。 7)开发使用简单:JavaScript 基本结构类似C 语言,采用小程序段的方式编程,并提供了简易的开发平台和便捷的开发流程,就可以嵌入到HTML 文档中供浏览器解 释执行。同时JavaScript 的变量类型是弱类型,使用不严格。 8)相对安全性:JavaScript 是客户端脚本,通过浏览器解释执行。它不允许访问本地

javascript_dom

什么是DOM? 通过JavaScript,您可以重构整个HTML文档。您可以添加、移除、改变或重排页面上的项目。 要改变页面的某个东西,JavaScript就需要对HTML文档中所有元素进行访问的入口。这个入口,连同对HTML元素进行添加、移动、改变或移除的方法和属性,都是通过文档对象模型来获得的(DOM)。 在1998年,W3C发布了第一级的DOM规范。这个规范允许访问和操作HTML页面中的每一个单独的元素。 所有的浏览器都执行了这个标准,因此,DOM的兼容性问题也几乎难觅踪影了。 DOM可被JavaScript用来读取、改变HTML、XHTML以及XML文档。 DOM被分为不同的部分(核心、XML及HTML)和级别(DOM Level 1/2/3): Core DOM 定义了一套标准的针对任何结构化文档的对象 XML DOM 定义了一套标准的针对XML文档的对象 HTML DOM 定义了一套标准的针对HTML文档的对象。 HTML DOM 节点 HTML文档中的每个成分都是一个节点。 节点 根据DOM,HTML文档中的每个成分都是一个节点。 DOM是这样规定的: ?整个文档是一个文档节点 ?每个HTML标签是一个元素节点 ?包含在HTML元素中的文本是文本节点 ?每一个HTML属性是一个属性节点

注释属于注释节点 Node 层次 节点彼此都有等级关系。 HTML文档中的所有节点组成了一个文档树(或节点树)。HTML文档中的每个元素、属性、文本等都代表着树中的一个节点。树起始于文档节点,并由此继续伸出枝条,直到处于这棵树最低级别的所有文本节点为止。 文档树(节点数) 请看下面这个HTML文档: DOM Tutorial

DOM Lesson one

Hello world! 上面所有的节点彼此间都存在关系。 除文档节点之外的每个节点都有父节点。举例, 和的父节点是节点,文本节点"Hello world!"的父节点是节点。 大部分元素节点都有子节点。比方说,节点有一个子节点:节点。<title>节点也有一个子节点:文本节点"DOM Tutorial"。 当节点分享同一个父节点时,它们就是同辈(同级节点)。比方说,<h1>和是同辈,因为它们的父节点均是<body>节点。 节点也可以拥有后代,后代指某个节点的所有子节点,或者这些子节点的子节点,以此类推。比方说,所有的文本节点都是<html>节点的后代,而第一个文本节点是<head>节点的后代。 节点也可以拥有先辈。先辈是某个节点的父节点,或者父节点的父节点,以此类推。比方说,所有的文本节点都可把<html>节点作为先辈节点。</p><h2>HTML鼠标事件</h2><p>HTML鼠标事件 ------------------------------------------------------------------------------- onblur 事件:当鼠标失去焦点后执行 https://www.wendangku.net/doc/7714198911.html,/htmldom/event_onblur.asp https://www.wendangku.net/doc/7714198911.html,/question/60621120.html onblur 事件会在对象失去焦点时发生 例如:我们将在用户离开输入框时执行 JavaScript 代码: ------------------------------------------------------------------------------- onclick 事件:单击鼠标左键后执行 https://www.wendangku.net/doc/7714198911.html,/htmldom/event_onclick.asp ------------------------------------------------------------------------------- ondblclick 事件:双击鼠标左键后执行 https://www.wendangku.net/doc/7714198911.html,/htmldom/event_ondblclick.asp ------------------------------------------------------------------------------- onfocus 事件:事件在对象获得焦点时发生。 https://www.wendangku.net/doc/7714198911.html,/htmldom/event_onfocus.asp ------------------------------------------------------------------------------- onkeydown 事件:事件会在用户按下一个键盘按键时发生。 https://www.wendangku.net/doc/7714198911.html,/htmldom/event_onkeydown.asp ------------------------------------------------------------------------------- onkeypress 事件:onkeypress 事件会在键盘按键被按下并释放一个键时发生。https://www.wendangku.net/doc/7714198911.html,/htmldom/event_onkeypress.asp ------------------------------------------------------------------------------- onKeyUp 事件:事件会在键盘按键被松开时发生。 https://www.wendangku.net/doc/7714198911.html,/htmldom/event_onkeyup.asp <input type="text" onkeyup="alert(this.value)"/> 敲入一个a弹出一个a <input type="text" onkeypress="alert(this.value)"/> 敲入一个a弹出一个空。再敲入一个s弹出一个a 。再敲入一个s弹出一个sa ------------------------------------------------------------------------------- onmousedown 事件:事件会在鼠标按键被按下时发生。 https://www.wendangku.net/doc/7714198911.html,/htmldom/event_onmousedown.asp</p><h2>神州数码生成树实验</h2><p>实验二十一、生成树实验 一、实验目的 1、了解生成树协议的作用。 2、熟悉生成树协议的配置。 二、应用环境 交换机之间具有冗余链路本来是一件很好的事情,但是它有可能引起的问题比它能够解决的问题还要多。如果你真的准备两条以上的路,就必然形成了一个环路,交换机并不知道如何处理环路,只是周而复始地转发帧,形成一个“死循环”,这个死循环会造成整个网络处于阻塞状态,导致网络瘫痪。 采用生成树协议可以避免环路。 生成树协议的根本目的是将一个存在物理环路的交换网络变成一个没有环路的逻辑树形网络。IEEE802.1d 协议通过在交换机上运行一套复杂的算法STA(spanning-tree algorithm),使冗余端口置于“阻断状态”,使得接入网络的计算机在与其他计算机通讯时,只有一条链路生效,而当这个链路出现故障无法使用时,IEEE802.1d 协议会重新计算网络链路,将处于“阻断状态”的端口重新打开,从而既保障了网络正常运转,又保证了冗余能力。 三、实验设备 1、DCS-3926S 交换机2 台 2、PC 机2 台 3、Console 线1-2 根 4、直通网线 4-8 根 四、实验拓扑 五、实验要求 IP 地址设置:</p><p>如果生成树成功,则PC1 可以ping 通PC2。 六、实验步骤 第一步:正确连接网线,恢复出厂设置之后,做初始配置 交换机A: switch#config switch(Config)#hostname switchA switchA(Config)#interface vlan 1 switchA(Config-If-Vlan1)#ip address 10.1.157.100 255.255.255.0 switchA(Config-If-Vlan1)#no shutdown switchA(Config-If-Vlan1)#exit switchA(Config)# 交换机B: switch#config switch(Config)#hostname switchB switchB(Config)#interface vlan 1 switchB(Config-If-Vlan1)#ip address 10.1.157.101 255.255.255.0 switchB(Config-If-Vlan1)#no shutdown switchB(Config-If-Vlan1)#exit switchB(Config)# 第二步:“PC1 ping PC2 –t ”观察现象 1、ping不通; 2、所有连接网线的端口的绿灯很频繁地闪烁,表明该端口收发数据量很大,已经 在交换机内部形成广播风暴。 第三步:在两台交换机中都使用启用生成树协议 switchA(Config)#spanning-tree mode stp</p><h2>DOM常用节点类型汇总</h2><p>https://www.wendangku.net/doc/7714198911.html, web前端培训教程:DOM常用节点类型汇总 DOM 基础课程中,我们了解了DOM 的节点并且了解怎样查询和操作节点,而本身这些不同的节点,又有着不同的类型。</p><p>https://www.wendangku.net/doc/7714198911.html, 1.Node 类型 Node 接口是DOM1 级就定义了,Node 接口定义了12 个数值常量以表示每个节点的类型值。除了IE 之外,所有浏览器都可以访问这个类型。</p><p>https://www.wendangku.net/doc/7714198911.html, 虽然这里介绍了12 种节点对象的属性,用的多的其实也就几个而已。 alert(Node.ELEMENT_NODE); //1,元素节点类型值 alert(Node.TEXT_NODE); //2,文本节点类型值 我们建议使用Node 类型的属性来代替1,2 这些阿拉伯数字,有可能大家会觉得这样岂不是很繁琐吗?并且还有一个问题就是IE 不支持Node 类型。 如果只有两个属性的话,用1,2 来代替会特别方便,但如果属性特别多的情况下,1、2、3、4、5、6、7、8、9、10、11、12,你根本就分不清哪个数字代表的是哪个节点。当然,如果你只用1,2 两个节点,那就另当别论了。 IE 不支持,我们可以模拟一个类,让IE 也支持。 if (typeof Node == 'undefined') { //IE 返回 window.Node = { ELEMENT_NODE : 1,</p><p>https://www.wendangku.net/doc/7714198911.html, TEXT_NODE : 3 }; } 2.Document 类型 Document 类型表示文档,或文档的根节点,而这个节点是隐藏的,没有具体的元素标签。 document; //document document.nodeType; //9,类型值 document.childNodes[0]; //DocumentType,第一个子节点对象 document.childNodes[0].nodeType; //非IE 为10,IE 为8 document.childNodes[1]; //HTMLHtmlElement document.childNodes[1].nodeName; //HTML 如果想直接得到<html>标签的元素节点对象HTMLHtmlElement,不必使用childNodes属性这么麻烦,可以使用documentElement 即可。 document.documentElement; //HTMLHtmlElement 在很多情况下,我们并不需要得到<html>标签的元素节点,而需要得到更常用的 <body>标签,之前我们采用的是:document.getElementsByTagName('body')[0],那么这里提供一个更加简便的方法:document.body。</p><h2>事件机制</h2><p>事件机制 1.什么是事件? a)在文档中,可以被识别的控件的操作就是事件。鼠标的点击, 单击双击。。鼠标经过移出,键盘按下等。。。 2.事件流? a)在文档中事件执行的顺序就是事件流。 微软公司提出事件的流程应该为冒泡流。 网景公司提出事件的流程应该为捕获流。 W3C为了平衡事件流机制,制订了标准的事件流。 第一阶段:事件流的捕获阶段</p><p>第二阶段:处于事件阶段 第三阶段:事件流的冒泡阶段 关于浏览器的问题: 关于标准的事件流,并不是所有的浏览器都能够很好的支持。 能支持标准时间流的浏览器为:IE9+、chrome、firefox、safari、opera,低版本IE678等只支持冒泡流 毋须担心,因为大部分常用事件都是处于冒泡流。 如何添加或者注册事件以及事件的取消: DOM0阶段(无标准阶段) 注册事件 方法1:在HTML中使用事件相关属性 例如:<div onclick=”action()”> 方法2:在JS的元素节点中使用和事件同名的属性添加 例如:元素节点.onlick=action; 注意:方法2中的action是一个函数,可以是声明函数也可以是一个匿名函数 取消事件 在添加事件的方法2基础上进行重新赋值即可 元素节点.onclick=null;</p><p>该方法对于使用DOM0的2中事件添加方法都可以取消。DOM2阶段 注册事件 IE浏览器 attachEvent()方法 格式:元素节点.attachEvent(事件名,事件的执行方法); 参数1:书写时必须是字符串,而且必须有on 参数2:执行事件的方法,要求如果需要删除的情况下必须写声明函数,只有确认不需要删除的情况下才可以使 用匿名函数。推荐使用声明函数 非IE浏览器 addEventListener() 格式:元素节点.addEventListener(‘事件名’,事件的执行方法,处于事件流的阶段); 参数1:书写必须是字符串,而且不能有on 参数2:执行事件的方法,要求如果需要删除的情况下必须写声明函数,只有确认不需要删除的情况下才可以使 用匿名函数。推荐使用声明函数 参数3:设置事件发生的阶段,true捕获阶段false冒泡阶段,默认是false(推荐false) 取消事件</p><h2>生成树的详细配置及实验</h2><p>STP及其优化实验拓扑图:</p><p>实验步骤: 1. 设置SW1,SW2,SW3主机名分别为Core1,Core2, ED-SW 2. 把Core1与Core2间的两条链路绑定成etherchannel2,并设置成Trunk mode Core1: interface range fa0/23 - 24 switchport trunk encapsulation dot1q //支持ISL及dot1Q的交换机必须设置trunk的封装协议。低端的C2950,C2960,C2918只支持dot1Q,无此命令。 switch mode trunk //接口设置为Trunk模式。 channel-group 2 mode on //接口加入Etherchannel2。 Creating a port-channel interface Port-channel 2 //系统提示自动创建port-channel2。 interface Port-channel2 // Port-channel2接口配置必须同物理接口一致。 switchport trunk encapsulation dot1q switchport mode trunk Core2: interface range fa0/23 - 24 switchport trunk encapsulation dot1q switch mode trunk channel-group 2 mode on Creating a port-channel interface Port-channel 2 interface Port-channel2 switchport trunk encapsulation dot1q switchport mode trunk 3.验证etherchannel设置 Core1#sh etherchannel summary //显示etherchannel的详细信息 Flags: D - down P - in port-channel I - stand-alone s - suspended H - Hot-standby (LACP only) R - Layer3 S - Layer2 U - in use f - failed to allocate aggregator u - unsuitable for bundling w - waiting to be aggregated d - default port Number of channel-groups in use: 1 //目前已经建好1个etherchannel。Number of aggregators: 1 Group Port-channel Protocol Ports ------+-------------+-----------+----------------------------------------------- 2 Po2(SU) - fa0/23(P) fa0/24(P) // S - Layer2 U - in use P - in port-channel</p><h2>前端基础知识</h2><p>划出的重点 html: img:定义图像,<img src="/i/eg_tulip.jpg" alt="上海鲜花港 - 郁金香" /> a:定义锚,标签定义超链接,用于从一张页面链接到另一张页面 div:定义文档中的节,<div> 可定义文档中的分区或节(division/section)。 <div> 标签可以把文档分割为独立的、不同的部分。它可以用作严格的组织工具,并且不使用任何格式与其关联。 ul:标签定义无序列表 li:标签定义列表项目。 <li> 标签可用在有序列表 (<ol>) 和无序列表 (<ul>) 中。 p:标签定义段落。 p 元素会自动在其前后创建一些空白。浏览器会自动添加这些空间,您也可以在样式表中规定。 br: 可插入一个简单的换行符。 <br> 标签是空标签(意味着它没有结束标签,因此这是错误的:<br></br>)。在 XHTML 中,把结束标签放在开始标签中,也就是 <br />。 span:定义文档中的节,用来组合文档中的行内元素 table:定义表格,简单的 HTML 表格由 table 元素以及一个或多个 tr、th 或 td 元素组成。 tr 元素定义表格行,th 元素定义表头,td 元素定义表格单元。 th:定义表格中的表头单元格。表单中有两种类型的单元格: 表头单元格 - 包含表头信息(由 th 元素创建) 标准单元格 - 包含数据(由 td 元素创建) tr:标签定义 HTML 表格中的行。 tr 元素包含一个或多个 th 或 td 元素 td:标签定义 HTML 表格中的标准单元格。 HTML 表格有两类单元格: 表头单元 - 包含头部信息(由 th 元素创建) 标准单元 - 包含数据(由 td 元素创建) css:width宽度 height高度 font规定文本的字体、字体尺寸、字体颜色 color颜色 background 背景 margin外边距 border边框 padding内边距 position属性规定元素的定位类型。这个属性定义建立元素布局所用的定位机制。任何元素都可以定位,不过绝对或固定元素会生成一个块级框,而不论该元素本身是什么类型。相对定位元素会相对于它在正常流中的默认位置偏移。 float属性定义元素在哪个方向浮动。以往这个属性总应用于图像,使文本围绕在图像周围,不过在 CSS 中,任何元素都可以浮动。浮动元素会生成一个块级框,而不论它本身是何种元素。 display显示 js:变量(var) 使用 var 关键词来声明变量, 数组和对象(array和objcet):所有事物都是对象:字符串、数字、数组、日期,等等,对象是拥有属性和方法的数据 函数(function):函数是由事件驱动的或者当它被调用时执行的可重复使用的代码块。</p></div> </div> <div> <div>相关文档</div> <div class="relatedtopic"> <div id="tabs-section" class="tabs"> <ul class="tab-head"> <li id="14075065"><a href="/topic/14075065/" target="_blank">dom事件</a></li> <li id="10316834"><a href="/topic/10316834/" target="_blank">dom对象</a></li> <li id="5313021"><a href="/topic/5313021/" target="_blank">生成树实验</a></li> <li id="16321255"><a href="/topic/16321255/" target="_blank">javascript操作dom</a></li> <li id="15218366"><a href="/topic/15218366/" target="_blank">dom操作</a></li> <li id="7759227"><a href="/topic/7759227/" target="_blank">dom基础</a></li> </ul> </div> </div> </div> </div> <div class="category"> <span class="navname">相关文档</span> <ul class="lista"> <li><a href="/doc/f115451974.html" target="_blank">80、90后律师,35岁就步入高危年龄! laKingdom</a></li> <li><a href="/doc/1f7140512.html" target="_blank">前端面试中常见Vue知识点整理</a></li> <li><a href="/doc/6a8907979.html" target="_blank">无监督的互联网事件抽取框架</a></li> <li><a href="/doc/8a16565686.html" target="_blank">亚当javascript教程整合</a></li> <li><a href="/doc/ce9468097.html" target="_blank">Jquery中的事件</a></li> <li><a href="/doc/3e6184586.html" target="_blank">父子组件事件通信</a></li> <li><a href="/doc/702003782.html" target="_blank">Javascript综合复习题大全及答案</a></li> <li><a href="/doc/9514958446.html" target="_blank">JavaScript事件</a></li> <li><a href="/doc/ff12402296.html" target="_blank">Javascript(JS)键盘事件监听</a></li> <li><a href="/doc/0f16621708.html" target="_blank">基于Actionscript 3.0碰撞检测类Flash游戏设计</a></li> <li><a href="/doc/64823834.html" target="_blank">10.HTML_DOM和综合实例</a></li> <li><a href="/doc/896958385.html" target="_blank">HTML 实验7:DOM2事件处理</a></li> <li><a href="/doc/c58911089.html" target="_blank">JQuery中的DOM操作-实训报告</a></li> <li><a href="/doc/f518713831.html" target="_blank">今日头条APP案例开发</a></li> <li><a href="/doc/325167586.html" target="_blank">事件机制</a></li> <li><a href="/doc/6e17099297.html" target="_blank">javascript100道试题</a></li> <li><a href="/doc/9f4291668.html" target="_blank">第7章 DOM编程</a></li> <li><a href="/doc/f43798258.html" target="_blank">第8章 jQuery操作DOM(上机操作步骤)</a></li> <li><a href="/doc/0b8855129.html" target="_blank">4:JavaScriptjavaDOM</a></li> <li><a href="/doc/403868951.html" target="_blank">DOM解析器</a></li> </ul> <span class="navname">最新文档</span> <ul class="lista"> <li><a href="/doc/0719509601.html" target="_blank">幼儿园小班科学《小动物过冬》PPT课件教案</a></li> <li><a href="/doc/0e19509602.html" target="_blank">2021年春新青岛版(五四制)科学四年级下册 20.《露和霜》教学课件</a></li> <li><a href="/doc/9319184372.html" target="_blank">自然教育课件</a></li> <li><a href="/doc/3019258759.html" target="_blank">小学语文优质课火烧云教材分析及课件</a></li> <li><a href="/doc/db19211938.html" target="_blank">(超详)高中语文知识点归纳汇总</a></li> <li><a href="/doc/af19240639.html" target="_blank">高中语文基础知识点总结(5篇)</a></li> <li><a href="/doc/9919184371.html" target="_blank">高中语文基础知识点总结(最新)</a></li> <li><a href="/doc/8b19195909.html" target="_blank">高中语文知识点整理总结</a></li> <li><a href="/doc/8019195910.html" target="_blank">高中语文知识点归纳</a></li> <li><a href="/doc/7f19336998.html" target="_blank">高中语文基础知识点总结大全</a></li> <li><a href="/doc/7a19336999.html" target="_blank">超详细的高中语文知识点归纳</a></li> <li><a href="/doc/6719035160.html" target="_blank">高考语文知识点总结高中</a></li> <li><a href="/doc/6a19035161.html" target="_blank">高中语文知识点总结归纳</a></li> <li><a href="/doc/4d19232289.html" target="_blank">高中语文知识点整理总结</a></li> <li><a href="/doc/3a19258758.html" target="_blank">高中语文知识点归纳</a></li> <li><a href="/doc/2519396978.html" target="_blank">高中语文知识点归纳(大全)</a></li> <li><a href="/doc/2419396979.html" target="_blank">高中语文知识点总结归纳(汇总8篇)</a></li> <li><a href="/doc/1f19338136.html" target="_blank">高中语文基础知识点整理</a></li> <li><a href="/doc/ef19066069.html" target="_blank">化工厂应急预案</a></li> <li><a href="/doc/bc19159069.html" target="_blank">化工消防应急预案(精选8篇)</a></li> </ul> </div> </div> <script> var sdocid = "7bc81d4a7fd5360cba1adba0"; </script> <div class="footer"> <p><a href="/tousu.html" target="_blank">侵权投诉</a>  © 2013-2023 www.wendangku.net  <a href="/sitemap.html">站点地图</a> | <a href="https://m.wendangku.net">手机版</a></p> <p><a href="https://beian.miit.gov.cn" target="_blank">闽ICP备11023808号-7</a>  本站文档均来自互联网及网友上传分享,本站只负责收集和整理,有任何问题可通过上访投诉通道进行反馈</p> </div> <script type="text/javascript">foot();</script> </div> </body> </html>