Bre*_*mas 7 javascript variables getelementbyid
以下作品:
$ = document.form;
x = $.name.value;
Run Code Online (Sandbox Code Playgroud)
这不是:
$ = document.getElementById;
x = $("id").value;
Run Code Online (Sandbox Code Playgroud)
关于为什么这不起作用或如何做到这一点的任何想法?
Que*_*tin 11
值this取决于您调用函数的方式.
当你打电话document.getElementById然后getElementById得到this === document.当您复制getElementById到一个不同的变量,然后调用它$,然后this === window(因为window是默认的变量).
然后,这会导致它在窗口对象中而不是在文档对象中查找id,并且由于窗口不是文档而且没有相同的方法,因此会失败.
你需要保持document通话.您可以使用包装函数,例如
function $ (id) { return document.getElementById(id); }
Run Code Online (Sandbox Code Playgroud)
...但请不要使用$.这是一个可怕的名字.它没有任何意义,它会让看到它的人感到困惑并想到"啊!我知道jQuery!" 或者"啊!我知道原型"等等.
| 归档时间: |
|
| 查看次数: |
8761 次 |
| 最近记录: |