如何在JavaScript中创建自己的类似jQuery的函数?
如何创建一个类似jquery回调的函数$ 假设我想调用id=“mydiv”的元素 我希望能像这样称呼它如何在JavaScript中创建自己的类似jQuery的函数?,javascript,jquery,Javascript,Jquery,如何创建一个类似jquery回调的函数$ 假设我想调用id=“mydiv”的元素 我希望能像这样称呼它 var div = $("mydiv").value; 我认为函数应该是这样的 function $(element) { return document.getElementById(element); } 这是正确的方法,还是您更喜欢另一种方法来解决它?您可以用以下三种方法之一: 局部范围: function $(element) { return document.get
var div = $("mydiv").value;
我认为函数应该是这样的
function $(element)
{
return document.getElementById(element);
}
这是正确的方法,还是您更喜欢另一种方法来解决它?您可以用以下三种方法之一: 局部范围:
function $(element)
{
return document.getElementById(element);
}
window.$ = function(element)
{
return document.getElementById(element);
}
或
或者,如果需要在全局范围中定义它:
function $(element)
{
return document.getElementById(element);
}
window.$ = function(element)
{
return document.getElementById(element);
}
如果包含了
jQuery
,则在全局范围中定义$
将覆盖它。使用可避免这种情况。jQuery实际上返回一个自定义对象,因此您可以调用$('#id')。someJqueryFunction()。如果只需要document.getElementById的快捷方式
var $ = document.getElementById;
应该足够了。所以,Bob过来查看一些落在他膝上的代码,发现它正在使用一个
$
函数。“%$@%!”,他叹了口气,“这是jQuery吗?不。也许prototype.js在那里的某个地方?哦,这是一个自定义例程。为什么人们不能给变量起个有用的名字?”如果你想缩短document.getElementById(“id”)的话,可以将函数命名为getElem(“id”)。我以前写过类似的东西,并为iframes等添加了可选的上下文参数。getElem(“id”,context)。这是在我发现jQuery之前。使用$只会让其他阅读你的代码的人感到困惑。在许多浏览器中都会失败。请记住,当您从对象提取方法,然后从现在未绑定的引用调用它时,将不会设置此
。因此,调用$
不会将正确的文档
对象传递给getElementById
函数。