`
ihuashao
  • 浏览: 4832536 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

获取DOM对象的几种扩展及简写

阅读更多
注:写css多了,自然就想到了更快的获取元素的方法,google到这篇文章,收藏一下。

参照prototype.js中getElementsByClassName的思想,扩展出几种在DEOM操作中可经常用到的获取对象的方法,使用获取对象变得更容易更精确了:)
document.getElementsByClassName = function(className,oBox) {
//适用于获取某个HTML区块内部含有某一特定className的所有HTML元素
this.d= oBox || document;
var children = this.d.getElementsByTagName('*') || document.all;
var elements = new Array();
for (var i = 0; i < children.length; i++) {
var child = children[i];
var classNames = child.className.split(' ');
for (var j = 0; j < classNames.length; j++) {
if (classNames[j] == className) {
elements.push(child);
break;
}
}
}
return elements;
}

document.getElementsByType = function(sTypeValue,oBox) {
//适用于获取某个HTML区块内部同属于某一特定type的所有HTML元素,如:input,script,link等等
this.d= oBox || document;
var children = this.d.getElementsByTagName('*') || document.all;
var elements = new Array();
for (var i = 0; i < children.length; i++) {
if (children[i].type == sTypeValue) {
elements.push(children[i]);
}
}
return elements;
}

function $() {
var elements = new Array();
for (var i = 0; i < arguments.length; i++) {
var element = arguments[i];
if (typeof element == 'string')
element = document.getElementById(element);
if (arguments.length == 1)
return element;
elements.push(element);
}
return elements;
}

$Cls = function (s,o){
return document.getElementsByClassName(s,o);
};

$Type = function (s,o){
return document.getElementsByType(s,o);
};

$Tag = function (s,o){
this.d=o || document;
return this.d.getElementsByTagName(s);
};

$Name = function (s){ //通过name的方式只能针对整个document而言,不能为其限定范围
return document.getElementsByName(s);
};
转自 http://www.cnlei.org/blog/article.asp?id=286
分享到:
评论

相关推荐

    dom4j源代码

    6. **Element和Attribute的扩展**:DOM4J的Element和Attribute类提供了许多方便的方法,如添加子元素、获取属性值等,使得XML处理更加直观。 7. **集合框架集成**:DOM4J的API设计与Java集合框架紧密结合,使得XML...

    jQuery常用功能大全

    要在这两种对象之间转换,可以使用jQuery的$()函数将DOM对象包装成jQuery对象,反之,也可以通过索引的方式从jQuery对象集合中取得对应的DOM对象。例如,通过$("#id")[0]可以获取到对应的DOM元素。 3. 如何获取...

    十几种编程语言的技术文档集合

    这个压缩包文件名为“十几种编程语言的技术文档集合”,它包含了一个丰富的编程知识库,尤其适合初学者和希望拓宽知识面的开发者。这个资源集合了chm格式的技术文档,chm是Compiled Help Manual的缩写,是微软提供的...

    jquery 笔记精要

    - `$`接受以下几种形式的参数: - `$`接收一个函数作为参数时,在DOM文档加载完成后自动执行该函数。 - `$`接收一个CSS选择器格式的字符串时,会在`document`中匹配一组元素,并返回一个jQuery对象。 - `$`接收...

    超级有影响力霸气的Java面试题大全文档

     对于客户机,EntityBean是一种持久性对象,它代表一个存储在持久性存储器中的实体的对象视图,或是一个由现有企业应用程序实现的实体。  Session Bean 还可以再细分为 Stateful Session Bean 与 Stateless ...

    基于AJAX和PHP的轻量级博客系统设计与实现.pdf

    XMLHttpRequest对象是一个轻量级对象,只有少量的几种属性和方法,但是当将其同后端代码、数据库以及动态前端结合起来时,它们将具有非常强大的力量。 XMLHttpRequest对象的属性及其定义如下所示: 表1 ...

    jquery 源码分析

    这里`$`符号是jQuery的一个简写,实际上是jQuery的一个全局函数,用于创建一个jQuery对象。该函数接受一个选择器作为参数,返回一个jQuery对象,该对象封装了匹配到的DOM元素集合。 在jQuery内部,`$`函数实际上...

    chrom extentions

    CRX 是 Chrome Extension 的缩写,是一种加密的 ZIP 文件格式,用于分发和安装 Chrome 扩展。这个版本号(0.1.71_0)表明这是该扩展的一个特定版本,数字越大代表更新越新。安装扩展时,用户通常需要将 CRX 文件拖放...

    xml-vc解析xml文档

    XML(eXtensible Markup Language)是一种用于存储和传输数据的标记语言,它以其结构化、自解释性和可扩展性而被广泛应用于各种领域,包括软件开发、网页设计以及数据交换等。在Windows环境中,VC++(Visual C++)...

    java 面试题 总结

    对于客户机,EntityBean是一种持久性对象,它代表一个存储在持久性存储器中的实体的对象视图,或是一个由现有企业应用程序实现的实体。 Session Bean 还可以再细分为 Stateful Session Bean 与 Stateless Session ...

    软件开发面试题及答案参考.pdf

    软件开发面试题及答案参考 Struts框架流程: 在Struts框架中,请求的处理过程可以分为以下几个步骤: 1. 用户提交表单,Struts根据表单的请求路径,在web.xml中指定servlet,并根据元素读取servlet的配置信息。...

    javaxml.rar_javaXML

    在Java中,处理XML主要涉及到几个核心库,如JDOM、SAX(Simple API for XML)和DOM(Document Object Model)。下面将详细探讨这些技术以及它们在Java中的应用。 **JDOM** JDOM是Java Document Object Model的缩写...

    JAVA 读取XML文件

    这可以通过以下几种方式实现: 1. **Eclipse/IntelliJ IDEA**: 将`jdom.jar`复制到项目的`lib`目录下,然后在IDE的构建路径设置中将其添加为库。 2. **Maven/Gradle**: 在构建文件中(如`pom.xml`或`build.gradle`)...

    前端大厂最新面试题-react.docx

    JSX是JavaScript XML的缩写,是一种用于描述React元素的语法。 9. 什么是Virtual DOM?Virtual DOM是React提供的一个虚拟DOM树,用于提高渲染效率。 10. Virtual DOM是如何工作的?Virtual DOM会将JavaScript对象...

    firefox xpi

    "Firefox XPI" 是一种基于Mozilla Firefox浏览器的扩展文件格式,用于安装插件或主题。XPI是"XML-based Package Installer"的缩写,它采用ZIP压缩格式,包含了一系列的文件和资源,允许用户自定义浏览器功能。在这个...

    jquery系统学习

    下面详细介绍几种流行的JavaScript库: - **Prototype**:Prototype是最早的JavaScript库之一,它扩展了JavaScript的内置对象(如String和Array对象)。虽然Prototype提供了一些有用的工具,但由于其年代较早,面向...

    jQuery基础教程

    构造器通常通过`jQuery()`函数(或简写为`$()`)实现,该函数可以接受以下几种类型的参数: ##### 3.1 CSS选择器 ```javascript // 选择所有段落元素 var paragraphs = $('p'); // 选择id为"example"的元素 var ...

Global site tag (gtag.js) - Google Analytics