jquery选择此加'-rest-of-name'

时间:2014-02-16 23:02:35

标签: jquery this selector

我正在尝试将代码段压缩为8行代替488 ...帮助?

有没有办法使用“this”选择器作为该名称的一部分?

这就是我现在拥有的(不起作用) http://jsfiddle.net/H44Zj/1/

HTML:

<div class="left">
    <div class="showcase show" id="new-online">&nbsp;</div>
    <div class="showcase" id="aa-online">&nbsp;</div>
    <div class="showcase" id="ab-online">&nbsp;</div>
    <div class="showcase" id="ac-online">&nbsp;</div>
    <div class="showcase" id="ad-online">&nbsp;</div>
    <div class="showcase" id="ae-online">&nbsp;</div>
    <div class="showcase" id="af-online">&nbsp;</div>
    <div class="showcase" id="ag-online">&nbsp;</div>
</div>

<div class="right">
    <div id="new">&nbsp;</div>
    <div id="aa">&nbsp;</div>
    <div id="ab">&nbsp;</div>
    <div id="ac">&nbsp;</div>
    <div id="ad">&nbsp;</div>
    <div id="ae">&nbsp;</div>
    <div id="af">&nbsp;</div>
    <div id="ag">&nbsp;</div>
</div>

JS:

$(function() {
    $('#aa,#ab,#ac,#ad,#ae,#af,#ag').mouseenter(function() {
        $(this + '-online').addClass("show");
        $('#new-online').removeClass("show");
    }).mouseleave(function() {
        $('#new-online').addClass("show");
        $(this + '-online').removeClass("show");
    });
});

我想在#aa的mouseenter时,将节目类添加到#aa-online。 我不想为每个(其中61个)元素复制/粘贴它。

非常感谢。

1 个答案:

答案 0 :(得分:3)

this DOM元素。所以不,它不能成为选择器的一部分。看起来您想要将元素的ID用作选择器的一部分:

$('#' + this.id + '-online')