$$在Prototype中意味着什么,在Jquery中它的等价物是什么

时间:2016-03-15 06:35:38

标签: jquery prototype

我正在将rails应用程序从prototype迁移到Jquery,我看到了类似

的语法

var subEl = $$("#items_grid_container")[0]

subEl.style.height = windowGridContainerEm + "em"

我知道如何将第二部分转换为Jquery,但我如何转换

var subEl = $$("#items_grid_container")[0]

到Jquery中的等价物。

我试过了$("#items_grid_container")[0]但是它没有用,任何帮助都会受到赞赏。感谢。

1 个答案:

答案 0 :(得分:2)

原型$$用于通过CSS选择器获取集合。那将是逗号分隔的字符串。所以,我会说它在内部使用document.querySelectorAll("tag/id/class/attributes")。 虽然id​​选择器只返回一个元素。

因此,jQuery等效只是单$

$("#item_grid_container")[0]

将返回DOM元素而不是jQuery对象。因此, jQuery方法无法应用于DOM元素 ,反之亦然。只有jQuery对象才能使用jQuery方法。如果你需要jQuery对象,那么你不必在选择器中添加[0]

所以你必须这样做:

 var el = $("#item_grid_container");

 el.width(thevarwidth);