Are jQuery selectors safer than DOM properties?

These 2 expressions do the same thing, but is one safer or even more efficient?

var indexedCellValue = selectedCell.srcElement.parentElement.cells[index].innerText;

var indexedCellValue = $(selectedCell.srcElement).parent('tr').get(0).cells[index].innerText;

(And getting the cell, selectedCell, the parent row, and indexing into the column of that parent row.)

+5
source share
3 answers

Pure JavaScript will always be faster than jQuery, but with jQuery you guarantee that the code will work in most browsers.

+4
source

With jQuery, you only select elements that have a parent tr. I also think that a clean version of javascript will work on firefox 9+, but not older.

, jQuery, parent() ( 5666, 1.9.0):

parent: function( elem ) {
    var parent = elem.parentNode;
    return parent && parent.nodeType !== 11 ? parent : null;
},

, parentElement, parentNode, ( Firefox, 9, , . : DOM parentNode parentElement).

, node DOCUMENT_FRAGMENT_NODE ( , , , - , ).

2.0, ( pimvdb), parentElement ( - commit):

parent: function( elem ) {
    return elem.parentElement;
},
+1

JQuery

var indexedCellValue = $($(selectedCell.srcElement).parent('tr').children()[index]).text();

parentElement, innerText.

.

0

All Articles