1

我想将 an 的 id 传递给一个函数,<LI>并让它返回<UL>.

id 可能不按顺序排列,并且还有其他元素嵌套在其中,<LI>所以我不能只得到下一个。

我已经在网上搜索并尝试了各种组合但没有成功。

HTML:

<ul class="timeline" id="timeline">

    <li id="timelineLI-1A4">
        <div class="timelineIcon letter"></div>
        <div class="dateContainer"></div>
    </li>

    <li id="timelineLI-2">
        <div class="timelineIcon mail"></div>
        <div class="dateContainer"></div>
    </li>

</ul>

JavaScript/JQuery 代码:

function openNextTile() {
    console.log(lastTileOpened);

    // Get the current tile that's open
    if (lastTileOpened == null) {
        openFirstTile();
    } else {
        console.log('opening next tile with keyboard');
        var getNextLIID = $('ul#' + 'timelineTile-' + lastTileOpened).next();
        animateTile(getNextLIID);
    }
}
4

2 回答 2

3

这似乎很容易实现:

function getNext(id) {
    return $("#" + id).next("li").attr("id");
}

演示:http: //jsfiddle.net/QKRrM/

于 2013-08-08T16:04:04.110 回答
0
var nextId = function( id ) {
    return $('#' + id).next().attr('id');
};

示例用法:

<ul>
    <li id="one">...</li>
    <li id="two">...</li>
</ul>

console.log(nextId('one')); // "two"
于 2013-08-08T16:04:40.623 回答