.get()
.get( [index] ) Returns: Element, Array
Description: Retrieve the DOM elements matched by the jQuery object.
-
version added: 1.0.get( [index] )
indexA zero-based integer indicating which element to retrieve.
The .get()
method grants us access to the DOM nodes underlying each jQuery object. Suppose we had a simple unordered list on the page:
<ul> <li id="foo">foo</li> <li id="bar">bar</li> </ul>
Without a parameter, .get()
returns all of the elements:
alert($('li').get());
All of the matched DOM nodes are returned by this call, contained in a standard array:
[<li id="foo">, <li id="bar">]
With an index specified, .get() will retrieve a single element:
($('li').get(0));
Since the index is zero-based, the first list item is returned:
<li id="foo">
Each jQuery object also masquerades as an array, so we can use the array dereferencing operator to get at the list item instead:
alert($('li')[0]);
However, this syntax lacks some of the additional capabilities of .get(), such as specifying a negative index:
alert($('li').get(-1));
A negative index is counted from the end of the matched set, so this example will return the last item in the list:
<li id="bar">
Examples:
Example: Selects all divs in the document and returns the DOM Elements as an Array, then uses the built-in reverse-method to reverse that array.
<!DOCTYPE html>
<html>
<head>
<style>
span { color:red; }
</style>
<script src="http://code.jquery.com/jquery-1.7rc2.js"></script>
</head>
<body>
Reversed - <span></span>
<div>One</div>
<div>Two</div>
<div>Three</div>
<script>
function disp(divs) {
var a = [];
for (var i = 0; i < divs.length; i++) {
a.push(divs[i].innerHTML);
}
$("span").text(a.join(" "));
}
disp( $("div").get().reverse() );
</script>
</body>
</html>
Example: Gives the tag name of the element clicked on.
<!DOCTYPE html>
<html>
<head>
<style>
span { color:red; }
div { background:yellow; }
</style>
<script src="http://code.jquery.com/jquery-1.7rc2.js"></script>
</head>
<body>
<span> </span>
<p>In this paragraph is an <span>important</span> section</p>
<div><input type="text" /></div>
<script>
$("*", document.body).click(function (e) {
e.stopPropagation();
var domEl = $(this).get(0);
$("span:first").text("Clicked on - " + domEl.tagName);
});
</script>
</body>
</html>