2017-10-06 69 views
2

我有一个查询选择查询选择器和jqueryfind?

var thumbnail = file.previewElement.querySelector(".dz-image .image img"); 

,我已经写了jQuery找出相同elment

var thumbnail2= previewElementForm.find(".dz-image .image img"); 

当我做这两个我得到了相同的元素的console.log,但返回类型看起来不一样。

的是这2之间的区别?我可以将缩略图2的类型转换为缩略图1的类型吗?

+0

'querySelector'匹配第一个元素只,'发现()'匹配的多个元素 – prasanth

回答

1

的是这2之间的区别?

.querySelector()返回单个DOM元素。 jQuery.fn.find()可以返回多个jQuery对象。

可我转换的thumbnail2类型类型thumbnail1的?

可以使用括号记号[index].get(index)以下.find()传递的索引,其中index是从0document减去1定义的元素的数目的数目在得到DOM元件。

+0

为什么我需要一个数组? –

+0

我可以使用JavaScript来返回一个节点列表吗? –

+0

查看更新后的帖子。 '.querySelectorAll()'返回'NodeList',而不是'.querySelector()',它返回一个元素。可以使用'VAR thumbnail2 = previewElementForm.find(”。DZ-图像IMG图像配 “)[0]'或'VAR thumbnail2 = previewElementForm.find(” 获得.find的'第一个匹配元素()'呼叫。DZ -image .image img“)。get(0)'。 – guest271314

1

.find() jQuery的返回一组匹配元件。

有它的相同类型,可以:

var thumbnail2 = previewElementForm.find(".dz-image .image img")[0];

var thumbnail2 = previewElementForm.find(".dz-image .image img").get(0);