JavaScript中也使用$美元符号来代替document.getElementById

代码如下:

function $(id){return document.getElementById(id);

上面的对于新版本的浏览器都是没有问题的,如果使用古老的浏览器,可以使用下面的函数


代码如下:

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

来实现$代替document.getElementById的效果,虽然简单,但对于没有引用了prototype和jquery等框架的,避免了每次写document.getElementById,只需在一个公共JavaScript文件定义后便可处处使用了。

(0)

相关推荐

  • 用JavaScript实现全局替换,解决$等特殊符号的难题[

    感谢海浪提供的正则,原贴请参见: http://www.iecn.net/bbs/view/106503.html 因为要做个模板替换的东西,里面的变量采用${MyName}这种格式的命名方式.在进行全局替换时,遇到两个难点: 1.要么无法替换掉$等特殊符号 2.要么无法忽略大小写 在海浪有帮助下,终于有了最佳实现方式:) 最佳实现方式: 复制代码 代码如下: <script type="text/javascript">  String.prototype.replace

  • 深入分析下javascript中的[]()+!

    这个东西也不是新鲜玩意了,很久之前就见过,但是一看到那一大坨代码,实在是提不起一点研究的兴趣.无奈今天碰到这样一道题目,只好决定深入研究一下. 关于上面的题目,有必要多说几句.实际上题目并没有要求一定只有[]()+!这六个字符,要求会宽松不少,不过题目描述中并没有说明的很清楚.而且运行环境是node,这样导致并没有window,history,document这些对象.更没有window.atob();和window.atob();这两个函数.总之那道题与我这篇文章并没有多大关系.不过在通过题目

  • JavaScript 加号(+)运算符号

    一,对于引用类型对象(我指的是String,Date,Object,Array,Function,Boolean)的+运算符运算过程如下! 1,首先调用此对象的valueOf方法,得到返回数值A 2,然后把此数值A转换成数字,得到的是最终数值 我的测试如下: 复制代码 代码如下: function w(s){ document.writeln("<br/>"); document.writeln(s); document.writeln("<br/>-

  • 仅用[]()+!等符号就足以实现几乎任意Javascript代码

    请在Firefox下测试 看了下例子: js代码 <script> alert("hi there") </script> 就等价于 <script> ([][(![]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[

  • javascript去除字符串中所有标点符号和提取纯文本的正则

    用正则表达式除字符串中所有标点符号 复制代码 代码如下: <script language="javascript">   var str="jfkldsjalk,.23@#!$$k~!  @#$%^&*()(_+-=|\{}[]';:,./<>??gg  g~```gf";   str=str.replace(/[\ |\~|\`|\!|\@|\#|\$|\%|\^|\&|\*|\(|\)|\-|\_|\+|\=|\||\\

  • 用javascript判断输入数据是否货币并自动添加¥符号的代码

    经典上的一位朋友提出的问题,偶以前正好写过一个股票系统处理过一些货币数据,现在记忆犹在,所以就帮忙解决了.自己也保存再次,以便以后使用. new document [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

  • JavaScript中也使用$美元符号来代替document.getElementById

    复制代码 代码如下: function $(id){return document.getElementById(id); 上面的对于新版本的浏览器都是没有问题的,如果使用古老的浏览器,可以使用下面的函数 复制代码 代码如下: function $(objectId) { if(document.getElementById && document.getElementById(objectId)) { // W3C DOM return document.getElementById(o

  • MyBatis中#号与美元符号的区别

    #{变量名}可以进行预编译.类型匹配等操作,#{变量名}会转化为jdbc的类型. select * from tablename where id = #{id} 假设id的值为12,其中如果数据库字段id为字符型,那么#{id}表示的就是'12',如果id为整型,那么id就是12,并且MyBatis会将上面SQL语句转化为jdbc的select * from tablename where id=?,把?参数设置为id的值. ${变量名}不进行数据类型匹配,直接替换. select * fro

  • prototype框架中美元符号$用法分析

    本文实例讲述了prototype框架中美元符号$用法.分享给大家供大家参考,具体如下: prototype是实现面向对象的一个重要工具,是javascript的一个不错的框架. 用jquery的人都知道,jquery中也有$美元符号,prototype中呢,也有$,他们有什么区别呢. 1.prototype中$()的用法 prototype写法 $("test") 或者 $$("#test"), 他相当于js中document.getElementById(&quo

  • JavaScript中停止执行setInterval和setTimeout事件的方法

    js 代码中执行循环事件时,经常会用到 setInterval 和 setTimeout 这两个方法,关于这两个方法的细节这里不详细讨论了,简要分享下在需要停止循环事件的时候该如何操作. (1)setInterval 方法可按照指定的周期(以毫秒计)来调用函数或计算表达式,停止该方法可使用 clearInterval 方法.具体示例如下: 复制代码 代码如下: <html> <meta http-equiv="Content-Type" content="t

  • JavaScript中捕获与冒泡详解及实例

    JavaScript中捕获/阻止捕获.冒泡/阻止冒泡 事件流描述的是从页面中接收事件的顺序.提出事件流概念的正是IE和Netscape,但是前者提出的是我们常用的事件冒泡流,而后者提出的是事件捕获流. 第一部分:事件冒泡 即事件开始由最具体的元素接收,然后逐级向上传播到较为不具体的节点(文档). 下面举一个简单的例子: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF

  • javascript中的数字与字符串相加实例分析

    复制代码 代码如下: console.log('----1----') console.log('12' + '34')//'1234' console.log('12' + 34 )//'1234' console.log(12 + '34')//'1234' console.log(12 + 34 )//46 console.log('----2----') console.log(+'12' + '34')//'1234' console.log(+'12' + 34 )//46 cons

  • JavaScript中捕获/阻止捕获、冒泡/阻止冒泡方法

    事件流描述的是从页面中接收事件的顺序.提出事件流概念的正是IE和Netscape,但是前者提出的是我们常用的事件冒泡流,而后者提出的是事件捕获流. 第一部分:事件冒泡 即事件开始由最具体的元素接收,然后逐级向上传播到较为不具体的节点(文档). 下面举一个简单的例子: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>b

  • 了解javascript中的Dom操作

    DOM(Document Object Model): 结点的概念:整个文档就是由层次不同的多个节点组成,可以说结点代表了全部内容. 结点类型 1.元素结点 2.属性结点 3.文本结点 结点的注意点: 1.文本节点和属性结点都看作元素结点的子结点 2.我们一般所说的结点指的就是元素结点,将html标签看作是一个对象,并用"结点"称呼它 3.结点的关系有:父子关系.兄弟关系 1.获取元素结点 1)直接获取 ① document.getElementById() ② document.ge

  • web.py在模板中输出美元符号的方法

    由于web.py已经在模板中定义"$"符号位定界符,所以在模板中如果要使用美元符号需要特殊处理. 如我要在模板中输出"$name"字符串: 复制代码 代码如下: $name 报错 $name被认定为一个变量而不是当作HTML字符串处理.如果想要输出"$name"字符串必须要这么写: 复制代码 代码如下: $$name 保存运行正确输出. 特别是跟jQuery里混合使用的时候,也要注意.如: 复制代码 代码如下: $("id")

  • 解决jquery中美元符号命名冲突问题

    在Jquery中,$是JQuery的别名,所有使用$的地方也都可以使用JQuery来替换,如$('#msg')等同于JQuery('#msg') 的写法.然而,当我们引入多个js库后,在另外一个js库中也定义了$符号的话,那么我们在使用$符号时就发生了冲突.下面以引入两个库文件 jquery.js和prototype.js为例来进行说明. 第一种情况:jquery.js在prototype.js之后进行引入,如: <</span> script src = " prototyp

随机推荐