jQuery 选择具有相同类的随机元素

2024-01-15

我有“selectElement”类的元素。当我单击具有该类的元素时,我“选择”它,并给它另一个类“selectedElements”(如果它还没有)。

但是,我有一个按钮,应该随机选择一定数量(例如 10)的“selectElement”类元素,并给它们“selectedElement”类。

我尝试了类似这个答案的东西->https://stackoverflow.com/a/1764629/1011539 https://stackoverflow.com/a/1764629/1011539,但每次都会返回相同的值......

编辑:在乔恩的帮助下解决了。这是其他有类似问题的用户的代码:)

$("#chooseElementsRand").live("click",function(){
    $(".selectedElements").removeClass("selectedElements");
    var maxNum = parseInt($(".maxNum").html());
    var randomElements = shuffle($(".selectElement")).slice(0,maxNum).addClass("selectedElements");
    $(".selectedNum").html(randomElements.length);
    if(randomElements.length==maxNum) {
        $(".buttonToProceed").removeClass("notShown");
    }
});

每当你想选择 N 个元素时really从 X 中随机选择,解为费舍尔-耶茨洗牌 http://en.wikipedia.org/wiki/Fisher%E2%80%93Yates_shuffle. 这一页 http://bost.ocks.org/mike/shuffle/有一个 Javascript 实现(加上基本原理,加上漂亮的动画,所以去看看):

function shuffle(array) {
  var m = array.length, t, i;

  // While there remain elements to shuffle…
  while (m) {

    // Pick a remaining element…
    i = Math.floor(Math.random() * m--);

    // And swap it with the current element.
    t = array[m];
    array[m] = array[i];
    array[i] = t;
  }

  return array;
}

考虑到随机播放,您可以随机选择 X 个元素

var items = shuffle($(".selectElement")).slice(0, X);

这是一个工作小提琴 http://jsfiddle.net/fK8Xw/和玩。

脚注:由于您只对一定数量的随机选择感兴趣,因此无需无条件地对整个输入数组进行洗牌shuffle执行上述操作;你可以只洗牌一小部分然后使用.slice切断它并使用它。我将把这个作为练习;小心不要错误地抓住*未*洗牌的部分!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

jQuery 选择具有相同类的随机元素 的相关文章

  • 数字和小数的输入掩码

    在测试我的程序后 我发现了以下错误 我在 sqlserver 中的表包含 价格数字 6 2 我的程序的用户输入价格 555 00 就很好了 但是当他输入 555555 时 这是错误的 所以我需要指定掩码 其中尾数是可选的 0 到 999 小
  • 优雅地处理没有数据的 amcharts

    我想知道我的 dataProvider 是否为空 amCharts绘制时默认为null 我怎样才能动态地处理它 var chart AmCharts makeChart chartdiv theme none type serial dat
  • 生成大随机数 php [重复]

    这个问题在这里已经有答案了 我想使用 PHP 生成一个包含 75 个字符的数字 我到处寻找 但一无所获 除了这个 http dailycoding com tools RandomNumber aspx http dailycoding c
  • jquery中文本区域自动调整大小

    我怎样才能做一个
  • Jquery:选择器找不到类?

    我正在尝试推进 Jquery autcomplete 功能 我希望 Jquery 自动完成在表中创建新行 到目前为止 这有效 但我希望 Jquery 添加一个删除按钮 因此用户可以删除他添加的项目之一 document ready func
  • 选中/取消选中所有复选框

    我见过很多选中 取消选中所有复选框的脚本 但大多数人并不尊重这一点 如果我使用 全部选中 复选框切换所有复选框 然后取消选中列表中的单个复选框 则 全部选中 复选框仍处于选中状态 有没有一种优雅的方式来处理这种情况 checkAll cli
  • 从 thymeleaf 获取数据到模态引导程序、jquery

    我正在尝试获取模态视图的 id 这是为了更新 onclick 元素 但我找不到方法 知道如何为 boostrap 5 完成此操作 或我可以用其他方法吗 谢谢 tr a inactivate a div class modal fade mo
  • 简单模式对话框中链接的 Tab 键顺序

    我正在使用优秀的 jquery simplemodal 对话框插件来显示项目列表 这些项目包含超链接 除了模式对话框中的链接不会作为选项卡顺序的一部分出现之外 一切都很好 我尝试显式设置 tabindex 但由于某种原因 只有输入元素按 T
  • Jquery 组合 SlideUp/Down 并单击

    我创建了两个脚本 其中一个具有向上滑动和向下滑动命令 这些命令在页面加载时作用于计时器 第二个是单击事件 其中单击链接时执行向上 向下滑动命令 这两个脚本都是单独工作的 但我无法让它们一起工作 这是定时向上 向下滑动脚本 document
  • 解析“流”JSON

    我在浏览器中有一个网格 我想通过 JSON 将数据行发送到网格 但浏览器应该在接收到 JSON 时不断解析它 并在解析时将行添加到网格中 换句话说 在接收到整个 JSON 对象后 不应将行全部添加到网格中 应该在接收到行时将其添加到网格中
  • jqgrid删除:没有获取值

    我使用 JSP 和 Servlet IDE Eclipse 数据库 Oracle10 开发 Web 应用程序 我在用JQGRID以表格格式显示数据 我还想要添加 编辑 删除的功能JQGRID 到目前为止我已经完成了编辑功能 现在我想要Del
  • 文件上传控件 OnChange 事件 JQuery

    我正在尝试使用 AJAX JQUERY 和 Net HTTPHandler 构建页面来上传文件 如下所示http dotnet dzone com news async file upload jquery and http dotnet
  • 如何以编程方式处理 JqGrid 事件?

    我正在使用JqG rid 的 ASP NET 包装器 http www trirand net demoaspnet aspx 我想以编程方式连接一些网格的处理程序events http www trirand com jqgridwiki
  • 使用片段时应用程序崩溃

    我正在处理碎片和 我的代码中有一个我找不到的问题 logcat 指向我的一个片段中的这段代码 Override public View onCreateView LayoutInflater inflater ViewGroup conta
  • 使用 JQuery 更改元素的顺序

    有人知道我做错了什么吗 我正在尝试更改某些图像的显示顺序 我希望每次按下按钮时图像都会向右 向左移动一个位置 这是我尝试过的 但没有运气 任何帮助或见解将不胜感激 rightShift click function img hide var
  • 我可以使用 jQuery 打开下拉列表吗

    对于 HTML 中的下拉列表
  • FireFox 中的自动滚动

    我的应用程序是实时聊天 我有一个 Div 来包装消息 每条消息都是一个 div 所以 在几条消息之后 我的 DOM 看起来像这样 div div Message number two div div div div
  • Jquery 验证不能正确验证数字?

    我在使用 jquery 非侵入式验证验证数字时遇到问题 我使用的版本是 ASP NET MVC 3 jQuery 1 9 1 jQuery 用户界面 1 10 1 JQuery 验证 1 11 0 我试图验证的输入是
  • Javascript/Jquery:确定用户是否使用鼠标滚轮、滚动条或键盘滚动

    我正在尝试让用户界面正常工作 如果他们使用鼠标滚轮 我需要让它以一种方式滚动 如果他们使用滚动条 我需要让它以另一种方式滚动 如果他们使用键盘 我需要让它以另一种方式滚动 我相信滚轮和滚动条都充当鼠标事件 但是当单击滚动条时我无法让 jav
  • jQuery 对象相等

    如何确定两个 jQuery 对象是否相等 我希望能够在数组中搜索特定的 jQuery 对象 inArray jqobj my array 1 alert deviceTypeRoot deviceTypeRoot False alert d

随机推荐

  • Objective-C 库 - 无法形成对类实例的弱引用

    我目前正在使用 Objective C 的 XMPP 库 并且正在使用 桌面 示例代码 它登录正常 但是 当我打开新聊天或有人向我发送消息时 它会崩溃 这似乎是出了问题的地方 XMPPStream 11678 1b03 RECV 2012
  • npm 安装失败 EPROTO 获取请求失败

    当我尝试从 npm 安装软件包时 出现获取失败错误 我设置了 npm 的配置 将 strict ssl 设置为 false 设置注册表https registry npmjs org https registry npmjs org 设置代
  • 捆绑安装在 capistrano 中不起作用

    我想部署我的简单rails 4 0申请通过capistrano 3 0 I use bundler 1 3 5所以我添加Capistrano 捆绑器 https github com capistrano bundlergem 将捆绑器与
  • Java中的特殊字符

    java中如何使用特殊字符 它们属于 Cp1252 字符编码 我尝试在消息中使用它们 但无法使用它们 类似字符 de 使用关联的 UTF 值 例如在http www fileformat info info unicode char sea
  • Python 转换为数组时出现内存错误

    我的代码如下所示 from sklearn datasets import load svmlight files import numpy as np perm1 np random permutation 25000 perm2 np
  • EF5 Code First - 通过迁移更改列类型

    我是 EF5 Code First 的新手 在开始工作项目之前我正在修改概念验证 我最初创建了一个看起来像这样的模型 public class Person public int Id get set public string First
  • 如何使视图列不为空

    我正在尝试创建一个视图 其中我希望列仅为 true 或 false 然而 似乎无论我做什么 SQL Server 2008 都认为我的位列可能以某种方式为空 我有一个名为 产品 的表 其中 状态 列是INT NULL 在视图中 我想为 Pr
  • 使用 remix run 将数据发送到服务器

    我在使用 remix run 将数据发送到服务器时遇到问题 我不确定我是否完全理解 useAction 数据的工作原理 我了解 useLoaderData 函数的工作原理 但是当您尝试将数据发送到服务器时 我会收到错误 我想要做的是当我单击
  • 当使用最新的 Monodevelop 和 VS 2012 RC 共享代码时我遇到问题

    当使用最新的Monodevelop和VS 2012 RC来共享代码时 我可以从运行 MonoDevelop 的 Mac 和运行最新 VS 2012 beta 的 Windows 7 PC 加载和使用 sln 解决方案 csproj 项目文件
  • 如何在Excel中将数字保存为字符串?

    如何在Excel中将数字保存为字符串 当我尝试输入数字 00112233 时 Excel 自动将其格式设置为 112233 并将其保存为数字 但我希望前面的 0 不被截断并将数字保存为字符串 作为解决方法 我使用引号 来保存实际的字符串 有
  • Crispy-Forms 包含标签导致许多重复模板

    我有一个 Django 站点 它使用下面的模板来呈现一个 Cripy Forms 模型表单集 使用django debug toolbar 我推测include标签多次渲染 bootstrap4 模板 我认为这就是影响我性能的原因 即加载包
  • + 是什么意思?正则表达式中的意思? [复制]

    这个问题在这里已经有答案了 我见过 正则表达式中有很多 但我不确定它真正代表什么 我知道 means 1或更多 并且 means 0 or 1 也是如此 means 0或者更多 在这种情况下 为什么不直接使用 意思是0或者更多 我只需要知道
  • Pygame 淡入黑色函数

    我正在使用 pygame 最新版本在 python 3 中编写游戏 我有一个功能 旨在慢慢淡出屏幕 直到全黑 它应该通过在屏幕上多次位块传输低 alpha 黑色表面来实现 但是当我测试它时 它只会阻止游戏直到循环完成 我怀疑 black s
  • 与 Azure Application Insights、ASP.NET MVC 和 NLog 的活动关联

    如何设置混音 我配置没有问题应用洞察 and NLog但我不知道如何关联操作 我使用最新版本的NLog所以它知道System Diagnostics Trace CorrelationManager ActivityId以其 activit
  • 系统托盘上下文菜单具有渐变背景

    我正在用java开发桌面应用程序 启动时我的应用程序从系统托盘运行 但是系统托盘的上下文菜单根据操作系统具有标准的外观和感觉 我想自定义上下文菜单 我想为其提供渐变背景 想要更改字体 边框等 请告诉我这可能吗 如果有一些示例 请提供相同的链
  • 在 debian VM 上为 Flask api 构建 Scikit-Learn 时出现问题

    我正在开发一个 Flask API 项目 您可以访问该 APIhere https mdb in tu clausthal de assessment models apidocs 我在 Debian 11 VM 上部署了该项目 该虚拟机全
  • 保存具有 id 的元素的变量存储在哪里?

    这个问题 可通过 ID 访问元素 https stackoverflow com q 12663981 1026459 指出如果一个元素有一个 id 那么您可以根据该 id 通过变量名来访问它 这引起了我的兴趣 因为我在使用 Visual
  • 张量流服务

    有谁知道如何创建用于张量流服务的 C 客户端 我的张量流服务安装 我使用张量流服务 dockerfile 安装了张量流服务 然后在容器内执行了以下操作 pip install tensorflow pip install tensorflo
  • C++ Lambda 表达式:捕获子句与参数列表;最重要的区别是什么?

    我正在学习 C 中的 Lambda 表达式 尽管我不是 C C 的新手 我很难看出使用 Capture Clause 与在参数列表中传递的老式参数将变量绘制到 Lambda 主体中进行操作的相对优点 我熟悉它们的语法差异以及每种语法允许和不
  • jQuery 选择具有相同类的随机元素

    我有 selectElement 类的元素 当我单击具有该类的元素时 我 选择 它 并给它另一个类 selectedElements 如果它还没有 但是 我有一个按钮 应该随机选择一定数量 例如 10 的 selectElement 类元素