`
zexombie
  • 浏览: 21935 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

javascript function -- getElementsByAttribute()

阅读更多
i modified a version of the javascript function getElementsByAttribute(),it used like "getElementsByTagName()",copy these code below to your html page can see the effect.


<head>
<script>
function getElementByAttribute(aAttribute,aValue,abody){
        var Elements=[],
            sfunc='return Element.'+aAttribute+'=="'+aValue+'"?true:false;';
        SearchElement( !!abody?abody:document.body );
        return Elements;
        function ElementVerifier(ele){
            Element=ele;
            if(Element.nodeName=='#text') return false;
            return eval('Element.'+aAttribute+'=="'+aValue+'"?true:false;');
        }
        function SearchElement(ele){ 
            if(!ele) return;
            if(ElementVerifier(ele)) Elements.push(ele);
            SearchElement(ele.firstChild);
            SearchElement(ele.nextSibling);
        }
        
    }
    
    function test(){ 
        var foundElements=getElementByAttribute('style.width','100px');
        alert(foundElements.length);

       foundElements=getElementByAttribute('tagName','DIV',document.body);
        alert(foundElements.length);

        foundElements=getElementByAttribute('className','test-');
        alert(foundElements.length);        
    }
    
</script>
<style>.test{}</style>
</head>
<body onload="test();">
  <div style="width:100px">Test</div>
<div style="width:100px">Test</div>
<div class="test">Test</div>
</body>


注:这是我优化了一个外国人的方法,javascript只有三种getElemnet方法(getElemntById,getElemntsByName,getElementsByTagName),但有时候我们的需求更多所以就自己编写了一些方法,就比如这个getElemntsByAttribute,按属性名来查找指定范围内的元素。但是速度一般,找了很多类似的方法,速度都大同小异没有什么突破。如果大家有好的想法可以和我分享!
0
0
分享到:
评论

相关推荐

    前端项目-function-plot.zip

    《前端项目:深入理解function-plot》 在前端开发领域,可视化工具的使用越来越广泛,它们可以帮助我们更好地理解和展示数据。function-plot就是一个基于d3.js库的2D函数绘图器,它提供了简单易用的接口,让我们...

    测试驱动JavaScript开发-Test Driven JavaScript Development-PDF-英文版

    目前仅有的讲JavaScript的测试驱动开发的书,英文版,Amazon书评4星级的好书。

    cascade-function-.rar_cascade

    总之,"cascade-function-.rar_cascade" 文件包提供了一个基于Java脚本的省市级联功能实现,利用Dreamweaver作为开发工具,结合前端JavaScript和后端Java服务,实现用户友好且高效的地址选择功能。通过理解这种功能...

    廖雪峰-JavaScript教程-PDF版

    ### 廖雪峰-JavaScript教程-PDF版 #### JavaScript的重要性及发展历程 JavaScript作为世界上最流行的脚本语言之一,在Web开发领域占据着举足轻重的地位。无论是个人开发者还是大型企业,都离不开JavaScript的支持...

    Javascript-function-for-future-use

    "Javascript-function-for-future-use"这个标题暗示了我们可能在讨论如何编写和储存函数,以便在未来不同的项目或场景中重用它们。这样的做法可以提高代码的可维护性和复用性,减少重复工作,同时提升开发效率。 ...

    Javascript教程--从入门到精通【完整版】.pdf

    - JavaScript函数可以定义使用`function`关键字,例如`function Scroll(){}`。 - 控制流语句如`if`、`for`、`while`、`break`、`continue`可以控制代码的执行流程。 - 函数中可以使用`return`语句返回值,`return...

    JavaScript课件-04.pptx

    JavaScript是一种广泛应用于网页和网络应用开发的脚本语言,它主要负责实现客户端的交互和动态效果。在JavaScript中,函数和对象是两个核心概念,它们是编写高效代码的基础。 **函数**是JavaScript中可重用的代码块...

    Javascript Obfuscator代码混淆

    JavaScript Obfuscator是一种工具,主要用于保护JavaScript代码,通过将源代码转换为难以理解的形式,以防止未经授权的用户查看、修改或盗窃代码。在Web开发中,尤其对于那些包含商业逻辑或者敏感信息的JavaScript...

    JavaScript网上答疑系统-前端毕业设计.zip

    JavaScript网上答疑系统-前端毕业设计JavaScript网上答疑系统-前端毕业设计JavaScript网上答疑系统-前端毕业设计JavaScript网上答疑系统-前端毕业设计JavaScript网上答疑系统-前端毕业设计JavaScript网上答疑系统-...

    JavaScript手册-中文.chm

    比较全面和严谨的且包含很多中文的部分,打开后请点击: 开始看 Enter&gt;&gt; 进入JavaScript目录

    javascript经典特效---扫雷程序.rar

    javascript经典特效---扫雷程序.rar javascript经典特效---扫雷程序.rar javascript经典特效---扫雷程序.rar

    JavaScript SHA-256加密

    jssha256 is a compact JavaScript implementation of the SHA256 secure hash function.

    javascript-code-improver

    一个js代码整理工具。如:&lt;script language="JavaScript"&gt;var i=0,s="",k=0;function foo(){for(j=0;... } } } &lt;/script&gt; 详细介绍:http://jcay.com/javascript-code-improver.html&lt;br&gt;

    前端开源库-rehype-minify-javascript-script

    开源库“rehype-minify-javascript-script”就是为了解决这个问题而诞生的。它是一个用于JavaScript代码压缩的插件,专门针对HTML中的`&lt;script&gt;`标签内联脚本进行优化。这个库基于rehype,一个用于转换HTML的统一Ast...

    JavaScript-JavaScript语法集锦

    ### JavaScript 语法集锦知识点详解 #### 一、概述 JavaScript 是一种广泛应用于网页开发的脚本语言,它能够使网页具有动态交互功能。本文档将详细介绍一系列常用的 JavaScript 语法和方法,帮助开发者更好地理解和...

    node-function-code:将函数转换为字符串

    功能码 将函数转换为字符串npm install function-code var functionCode = require ( 'function-code' ) ;functionCode(fn,args ...) console . log ( functionCode ( function ( a , b ) { return a + b ;} , 2 ...

    javascript经典特效---用链接来提交表单.rar

    在JavaScript的世界里,表单提交通常通过`&lt;form&gt;`元素的`submit`事件来实现,但有时为了提供更友好的用户体验或特殊的交互效果,我们可能会选择使用链接(`&lt;a&gt;`标签)来触发表单的提交。这个"javascript经典特效---...

    javascript经典特效---带彩色边框的图片.rar

    例如,`$(selector).hover(function() {}, function() {})`用于实现悬停事件,`$(selector).addClass('className')`和`$(selector).removeClass('className')`来切换CSS类。 6. **动画效果**:JavaScript还可以通过...

    sa-sdk-javascript, 传感器分析 JavaScript SDK.zip

    sa-sdk-javascript, 传感器分析 JavaScript SDK sa-sdk-javascript传感器分析 JavaScript SDK紧急招聘前端工程师,运维工程师,大数据工程师等,各种级别的都需要,求发送到我邮箱( shengyonggen@sensorsdata.cn

    javascript经典特效---下拉式导航菜单.rar

    本资源"javascript经典特效---下拉式导航菜单.rar"主要探讨了如何利用JavaScript来创建这种效果。 首先,我们需要理解下拉式导航菜单的基本结构。通常,它由HTML的`&lt;ul&gt;`和`&lt;li&gt;`元素构建,其中`&lt;li&gt;`元素内嵌套另...

Global site tag (gtag.js) - Google Analytics