首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >加载随机<li>,单击并按下

加载随机<li>,单击并按下
EN

Stack Overflow用户
提问于 2014-11-07 15:44:09
回答 1查看 54关注 0票数 0

我对jquery一点也不熟悉,所以我真的为自己缺乏知识而道歉,但我正在努力理解。

下面有一段代码,当页面加载时,它会随机抽取一个<li></li>。太棒了!

代码语言:javascript
运行
复制
$(function(){
    $('#lome li').each(function(){
        $(this).hide();
    });
    var min = 0;
    var max = $('#lome li').length;
    var randomLi = Math.floor(Math.random() * (max - min)) + min;
    $('#lome li').eq(randomLi).show();
});

但我也希望它能与.click函数和.keydown一起工作。我该怎么做?我试过尝试上面的代码,但是

代码语言:javascript
运行
复制
$('.next').click(function()

这适用于单击操作,但在加载页面时,它加载了所有列表项,而不是jus随机项。

任何建议都是非常感谢的!谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-11-07 15:46:23

不清楚为什么在单击处理程序下运行代码不适用于您,但请尝试如下:

代码语言:javascript
运行
复制
function showRandomLi() {
    var $li = $('#lome li').hide(); // note: no loop required here
    var index = Math.floor(Math.random() * $li.length);
    $li.eq(index).show();
}

$(function() {
    showRandomLi(); // on load
    $('.next')
        .click(showRandomLi)
        .keydown(function(e) {
            e.which == 39 && showRandomLi();
        });  
});

Example fiddle

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26804868

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档