DOM 脚本编程中的兄弟节点
除IE外的浏览器是将换行符作为内容的文本节点(nodeType为3)。而元素的话,nodeType为1。下面是查找它们的实用方法:
代码如下:
lastSibling:function(node){
var tempObj = node.parentNode.lastChild;
while(tempObj.nodeType!=1 && tempObj.previousSibling!=null)
{
tempObj=tempObj.previousSibling;
}
return (tempObj.nodeType==1)?tempObj:false;
}
这是《深入浅出JavaScript》书中DOMhelp库中lastSibling方法的源码。与 mootools 库中实现源码差不多:
代码如下:
'last-child': function(){
var element = this;
while ((element = element.nextSibling)){
if (element.nodeType == 1) return false;
}
return true;
}
这是在 Mootools 1.2.4 源码中的 last-child() 方法。
相关推荐
-
JS构建页面的DOM节点结构的实现代码
小提示: 关于数组的concat和push方法. 两者的区别主要有: concat是连接数组,不会修改原数组,返回值为连接后的数组,与push的重要区别是concat会展开数组的第一层子数组 push是添加数组元素.就地修改原数组,返回值为添加的新项,push不会展开传入的数组. 复制代码 代码如下: var a = [1,2,3,4]; var b = [4,5,6,7]; var c = a.push(b); var d = a.concat(b); console.log('a',a);
-
JavaScript DOM节点添加示例
<!DOCTYPE html> <html> <body> <div id="div1"> <p id="p1">这是一个段落.</p> <p id="p2">这是另一个段落.</p> </div> <script> var para=document.createElement("h1"); var nod
-
js和jquery对dom节点的操作(创建/追加)
复制代码 代码如下: <script src="jquery-1.9.1.js" type="text/javascript"></script> <script type="text/javascript"> $(function () { $('#Button1').click(function () { // var ha = '<p>a</p>'; // $('div').app
-
html dom节点操作(获取/修改/添加或删除)
HTML DOM 是关于如何获取.修改.添加或删除 HTML 元素的标准.在 HTML DOM 中,所有事物都是节点.DOM 是被视为节点树的 HTML. 根据 W3C 的 HTML DOM 标准,HTML 文档中的所有内容都是节点: 整个文档是一个文档节点 每个 HTML 元素是元素节点 HTML 元素内的文本是文本节点 每个 HTML 属性是属性节点 注释是注释节点 HTML DOM 将 HTML 文档视作树结构.这种结构被称为节点树: HTML DOM Tree 实例 http://www
-
javascript 获取HTML DOM父、子、临近节点
在Web应用程序特别是Web2.0程序开发中,经常要获取页面中某个元素,然后更新该元素的样式.内容等.如何获取要更新的元素,是首先要解决的问题.令人欣慰的是,使用JavaScript获取节点的方法有很多种,这里简单做一下总结(以下方法在IE7和Firefox2.0.0.11测试通过): 1. 通过顶层document节点获取: (1) document.getElementById(elementId):该方法通过节点的ID,可以准确获得需要的元素,是比较简单快捷的方法.如果页面上含有多个相同i
-
DOM节点的替换或修改函数replaceChild()用法实例
本文实例讲述了DOM节点的替换或修改函数replaceChild()用法.分享给大家供大家参考.具体分析如下: DOM节点的替换过程: (1)创建新的节点: (2)找到旧的节点: (3)站在父节点的角度,使用replaceChild(新,旧)函数来替换. 复制代码 代码如下: <html> <head> <script type="text/javascript"> function t(){ //思路:1.首先找到要替换的节点:2. 创建一个新的
-
javascript获取dom的下一个节点方法
利用javascript 写一个在页面点击加减按钮实现数字的累加. 简略的html大概如此.看得懂就好不要在意这些细节啊 <input type="button" value="+" onclick="jia(this)" /> <label class="num">0</label> <input type="button" value="-"
-
DOM下的节点属性和操作小结
属性: 1 .nodeName 节点名称,相当于tagName.属性节点返回属性名,文本节点返回#text.nodeName,是只读的. 2 .nodeType 值:1,元素节点:2,属性节点:3,文本节点.nodeType是只读的. 3 .nodeValue 返回一个字符串,指示这个节点的值.元素节点返回null,属性节点返回属性值,文本节点返回文本.nodeValue可读可写,这是对元素节点不能写.一般只用于设置文本节点的值. 4 .childNodes 返回子节点数组.文本和属性节点的ch
-
DOM 脚本编程中的兄弟节点
除IE外的浏览器是将换行符作为内容的文本节点(nodeType为3).而元素的话,nodeType为1.下面是查找它们的实用方法: 复制代码 代码如下: lastSibling:function(node){ var tempObj = node.parentNode.lastChild; while(tempObj.nodeType!=1 && tempObj.previousSibling!=null) { tempObj=tempObj.previousSibling; } retu
-
Shell脚本编程中常用的数学运算实例
这部分主要讨论数学相关的shell脚本编程. 加法运算 新建一个文件"Addition.sh",输入下面的内容并赋予其可执行的权限. 复制代码 代码如下: #!/bin/bash echo "Enter the First Number: " read a echo "Enter the Second Number: " read b x=$(expr "$a" + "$b") echo $a + $b =
-
Java编程删除链表中重复的节点问题解决思路及源码分享
一. 题目 在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针. 二. 例子 输入链表:1->2->3->3->4->4->5 处理后为:1->2->5 三. 思路 个人感觉这题关键是注意指针的指向,可以定义一个first对象(值为-1,主要用于返回操作后的链表),first.next指向head,定义一个last同样指向first(主要用于操作记录要删除节点的前一个节点),定义一个p指向head,指向当前节点.
-
js中使用DOM复制(克隆)指定节点名数据到新的XML文件中的代码
复制代码 代码如下: <?php /* <?xml version="1.0" encoding="utf-8"?> <article> <item> <title name="t1"></title> <content>content1</content> <pubdate>2009-10-11</pubdate> </ite
-
DOM基础教程之模型中的模型节点
<html>位于网页的顶端 它没有父辈,称之为根节点 1.元素节点(element node) 可以说,整个DOM模型都是由元素节点(element node)组成 比如文本段落元素"<p>",无序清单的名称"<ul>",元素节点包含其他元素. 2.文本节点(text node) 例如<h2>中的文本"标题1",<li>中的文字内容,这些具体文本在DOM称为(text node) 3.属
-
JS实现DOM节点插入操作之子节点与兄弟节点插入操作示例
本文实例讲述了JS实现DOM节点插入操作之子节点与兄弟节点插入操作.分享给大家供大家参考,具体如下: <!doctype html> <html> <head> <meta charset="utf-8"> <title>www.jb51.net JS节点插入</title> <script> function showinsert(){ //添加子节点 var str=document.getElem
-
JavaScript跨浏览器获取页面中相同class节点的方法
网页开发时,在很多时候我们需要操作相同类名的元素,即class相同的元素.昨天参加笔试,有一道相关的题目没答上来: JavaScript获取页面中class为test的节点 于是收集了一些相关的资料,在本文中列举了两种我觉得比较好的方法,不足之处,还望大家批评指正.如果大家有更好的方法,希望可以分享. Solution1 Jeremy Keuth方案 Jeremy Keuth大叔在<JavaScript DOM 编程艺术>(第2版)(英文:DOM Scripting-Web Design wi
-
Java编程中更新XML文档的常用方法
本文简要的讨论了Java语言编程中更新XML文档的四种常用方法,并且分析这四种方法的优劣.其次,本文还对如何控制Java程序输出的XML文档的格式做了展开论述. JAXP是Java API for XML Processing的英文字头缩写,中文含义是:用于XML文档处理的使用Java语言编写的编程接口.JAXP支持DOM.SAX.XSLT等标准.为了增强JAXP使用上的灵活性,开发者特别为JAXP设计了一个Pluggability Layer,在Pluggability Layer的支持之下,
-
通过DOM脚本去设置样式信息
利用DOM脚本去设置样式信息:(by wushan) 在大多数场合,我们都用CSS去设置样式,但在某些特殊情况下,例如要根据元素在节点树里的位置来设置节点样式信息时,目前CSS还没办法做到这一点.但利用DOM就可以很轻易的完成. 例如:把一定样式施加到所有hl元素的下一兄弟节点(下一元素节点)上.这时候用CSS没办法确定位置,但用DOM的getElementsByTagName( )方法很容易就把所有hl元素后面的那个元素找出来,这时候只要对找出来的元素施加样式就可以了.以下是代码清单: 复制代
-
vbs/js脚本编程教学(1)
脚本编程教学(1) 论坛上好多朋友都问关于脚本的问题,正好最近对脚本比较有兴趣,就写点东西吧.首先说明一下,我的所有代码都是 vbscript,jscript我没有研究过,不过我想也差不多. 关于最基础的语法比如变量的申明,分支,循环,函数的调用,等等这些我就不讲了,不懂得自己看一下. 1.我们的第一个vbs程序:还是那个老得掉牙的冬冬. ************************hello.vbs************************** dim hello hello="he
随机推荐
- java开发中基于JDBC连接数据库实例总结
- OpenStack Identity(Keystone)身份服务、体系结构与中间件讲解
- js实现精确到秒的倒计时效果
- 现代 JavaScript 开发编程风格Idiomatic.js指南中文版
- 从零开始学YII2框架(六)高级应用程序模板
- 用PHP创建PDF中文文档
- 由给定的字符串生成关键字
- 随机生成文件名的函数
- JSP struts2 url传参中文乱码解决办法
- C#多线程编程中的锁系统基本用法
- 分享一个自己写的table表格排序js插件(高效简洁)
- 布局用CSS+DIV的优点总结
- ajax传递多个参数的实现代码
- CentOS安装solr 4.10.3详细教程
- javascript仿京东导航左侧分类导航下拉菜单效果
- 基于JavaScript实现全选、不选和反选效果
- Ruby中一些基本语法知识点的罗列汇总
- 服务器网站分离 给每个IIS站点建立一个用户第1/2页
- jQuery中的jQuery()方法用法分析
- 再探JavaScript作用域