选择元素| Javascript vs Jquery

选择元素| Javascript vs Jquery,javascript,jquery,html,Javascript,Jquery,Html,Javascript选择的元素和jQuery选择的相同元素有什么区别 我遇到了这个问题,试图用jQuery从元素中选择一个Html5数据属性,数据集将返回未定义的,即使它已明确设置。但是,使用常规javascript选择元素效果非常好。 那么,在幕后有什么不同之处阻止了这个例子的工作呢 var jsSelect=document.getElementByIdjsSelect; alertjsSelect.dataset.name; var jqSelect=$jsSelect; alertjq

Javascript选择的元素和jQuery选择的相同元素有什么区别

我遇到了这个问题,试图用jQuery从元素中选择一个Html5数据属性,数据集将返回未定义的,即使它已明确设置。但是,使用常规javascript选择元素效果非常好。 那么,在幕后有什么不同之处阻止了这个例子的工作呢

var jsSelect=document.getElementByIdjsSelect; alertjsSelect.dataset.name; var jqSelect=$jsSelect; alertjqSelect.dataset.name; 对于jQuery,jqSelect是一个jQuery对象,因此它没有dataset属性,但您可以使用

var log=函数{ var$log=$'log'; 返回函数msg{ $'

'{ 文本:msg }.appendTo$log } }; var jsSelect=document.getElementByIdjsSelect; 记录“本机api:”+jsSelect.dataset.name; var jqSelect=$jsSelect; 日志'jqueryapi:'+jqSelect.data'name'; var jqSelect=$jsSelect; 日志'Using prop:'+jqSelect.prop'dataset'。名称; 对于jQuery,jqSelect是一个jQuery对象,因此它没有dataset属性,但您可以使用

var log=函数{ var$log=$'log'; 返回函数msg{ $'

'{ 文本:msg }.appendTo$log } }; var jsSelect=document.getElementByIdjsSelect; 记录“本机api:”+jsSelect.dataset.name; var jqSelect=$jsSelect; 日志'jqueryapi:'+jqSelect.data'name'; var jqSelect=$jsSelect; 日志'Using prop:'+jqSelect.prop'dataset'。名称; Javascript选择的元素和jQuery选择的相同元素有什么区别

元素之间没有区别,但是jQuery返回了包装在jQuery对象中的元素,而DOM提供了对元素本身的引用。jQuery对象是元素的集合,因为它允许您选择多个元素并将它们视为一个集合

要从jQuery对象中获取元素本身,可以像数组一样索引到其中:

var rawElement = jqSelect[0];
alert(rawElement.dataset.name);
var jsSelect=document.getElementByIdjsSelect; snippet.logjsSelect.dataset.name; var jqSelect=$jsSelect; var rawElement=jqSelect[0]; snippet.lograwElement.dataset.name; Javascript选择的元素和jQuery选择的相同元素有什么区别

元素之间没有区别,但是jQuery返回了包装在jQuery对象中的元素,而DOM提供了对元素本身的引用。jQuery对象是元素的集合,因为它允许您选择多个元素并将它们视为一个集合

要从jQuery对象中获取元素本身,可以像数组一样索引到其中:

var rawElement = jqSelect[0];
alert(rawElement.dataset.name);
var jsSelect=document.getElementByIdjsSelect; snippet.logjsSelect.dataset.name; var jqSelect=$jsSelect; var rawElement=jqSelect[0]; snippet.lograwElement.dataset.name;
这是完美的,谢谢你的精彩解释!这是完美的,谢谢你的精彩解释!