选择具有给定 id 的元素的更快方法

Man*_*kis 1 html javascript jquery dom dom-traversal

我有个问题。假设我们有以下 html 标签:

<div id='foo'>I am a div</div>
Run Code Online (Sandbox Code Playgroud)

?他的 div 存在于 dom 上(它不是由 javascript 生成的)

如果我想在 javascript 中多次使用这个 div,这是更好的方法吗?

  • 将其存储在这样的变量中:

    var d = $("#foo")

  • 还是每次都用 jquery 调用它?: $("#foo").methodName()

哪种方法涉及较少的dom遍历?

小智 5

最快的方法是:

document.getElementById("foo");
Run Code Online (Sandbox Code Playgroud)

将此设置为一个变量以供重用将防止需要一遍又一遍地找到它,所以是的,这就是要走的路。

如果你想用它制作一个 jQuery 对象:

var fooDiv = document.getElementById("demo");
var $fooDiv = $(fooDiv);
Run Code Online (Sandbox Code Playgroud)