document.getElementById的简写方式

来源:Mr.Think 时间:2010-06-21 10:44:00 

Mr.Think是一个喜欢简洁的人,喜欢如诗一样的代码.不喜欢.NET的代码,就是因为经常看到同事用VS后生成出来的一段段冗长的代码.在我的思维中,JavaScript是一种很飘逸的语言,所以,写给TA的代码,也一定要做到飘逸,呵.比如用_$(id)代替document.getElementById(id).
个人比较推荐用prototype中对document.getElementById的定义:

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;
}

你还可以用以下代码来定义:

function $(objectId) {
if(document.getElementById && document.getElementById(objectId)) {
    return document.getElementById(objectId);// W3C DOM
    } else if (document.all && document.all(objectId)) {
        return document.all(objectId);// MSIE 4 DOM
    } else if (document.layers && document.layers[objectId]) {
        return document.layers[objectId];// NN 4 DOM.. note: this won't find nested layers
    } else {
        return false;
    }
}

这样写不断可以为JS文件省掉不少字符,还可以避免输入时的错误.

有一个小小的说明,$是一个自定义的值,你可以根据你的喜好写任何一个非JavaScript保留关键字,比如i_d,myid,等等你喜欢的定义.如果你的页面中调用到了jQuery的库文件,你可以直接用$代替document.getElementById.

标签:JavaScript,getElementById,prototype
0
投稿

猜你喜欢

  • XHTML与HTML之间的7个区别

    2009-05-20 10:13:00
  • pytorch 如何使用amp进行混合精度训练

    2023-12-25 13:35:02
  • Python实现获取汉字偏旁部首的方法示例【测试可用】

    2022-10-26 16:42:16
  • PyQt QListWidget修改列表项item的行高方法

    2022-02-08 08:33:35
  • 地图可视化神器kepler.gl python接口的使用方法

    2022-05-07 00:10:57
  • Python创建7种不同的文件格式的方法总结

    2021-01-24 03:13:51
  • Python通过TensorFLow进行线性模型训练原理与实现方法详解

    2022-11-10 16:17:27
  • Python基础练习之用户登录实现代码分享

    2023-11-06 10:59:37
  • mysql中group by与having合用注意事项分享

    2024-01-15 02:24:55
  • 基于Pygame实现简单的贪吃蛇游戏

    2022-05-14 17:43:10
  • MySQL查看版本的五种方法总结

    2024-01-16 08:22:04
  • Javascript获取表单名称(name)的方法

    2024-06-07 15:25:45
  • python爬虫中的url下载器用法详解

    2022-06-28 01:09:21
  • golang并发安全及读写互斥锁的示例分析

    2024-02-13 14:21:45
  • 解决MySQL 5.0不能使用自动增加字段问题

    2008-12-02 14:30:00
  • 关于Python函数的定义和参数

    2021-05-08 20:37:28
  • python抽象基类用法实例分析

    2021-03-04 11:06:25
  • python中的生成器实现周期性报文发送功能

    2023-02-07 23:15:12
  • javascript设计模式 – 桥接模式原理与应用实例分析

    2024-04-26 17:12:09
  • python3字符串输出常见面试题总结

    2021-01-13 08:39:23
  • asp之家 网络编程 m.aspxhome.com