0

我有一个 jQuery 选择器,用于将工具提示应用于元素:

TooltipBuilder.buildRackDisplayTooltip(this.$el, rackInformationListView.render().$el);

我的元素没有 id。它不需要一个,因为它this.$el唯一地标识了元素。

我想修改我的语句,使选择器现在匹配两个元素:

//  Doesn't work
var selector = this.$el + this.$el.children('.rackName');

我希望仅在鼠标离开this.$el或鼠标进入某些(但不是全部)后代时触发 mouseout 事件this.$el

是否可以在不分配 id 的情况下创建这样的表达式this.$el

如果我的元素有一个 id,我可能会使用一个选择器,例如:

var selector = $('#' + this.el.id + ' ,' + this.el.id + ' > .rackName');

虽然这看起来仍然是不必要的冗长

4

1 回答 1

4

您可以使用add组合元素(可能您的变量表示选择器)

var selector = this.$el.add(this.$el.children('.rackName'));

您甚至可以只提供要添加的选择器字符串。

var selector = this.$el.add('someselector');

并且仅在第一个示例中添加,您正在尝试获取孩子并将父母添加到其中。您可以使用var selector = this.$el.children('.rackName').addBack();, 第二个示例,您可以将.add()其用于不同的选择器。

于 2013-09-30T21:45:54.617 回答