Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/472.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/82.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将无序列表随机化_Javascript_Jquery_Html Lists - Fatal编程技术网

Javascript 将无序列表随机化

Javascript 将无序列表随机化,javascript,jquery,html-lists,Javascript,Jquery,Html Lists,可能重复: 经过一点帮助。在做了一件很简单的事情之后,但似乎自己找不到一个方法来做 我从一些后端代码(不在我的控制之下)生成了一个动态无序列表。列表可以是从9个标签到100+的任何内容。它们按照后端代码定义的顺序返回。使用jQuery/javascript,我希望能够随机化li标记的顺序,而不必重复它们中的任何一个 我的列表当前看起来如下所示: <ul id="myList"> <li>Item 1</li> <li>Item 2<

可能重复:

经过一点帮助。在做了一件很简单的事情之后,但似乎自己找不到一个方法来做

我从一些后端代码(不在我的控制之下)生成了一个动态无序列表。列表可以是从9个标签到100+的任何内容。它们按照后端代码定义的顺序返回。使用jQuery/javascript,我希望能够随机化li标记的顺序,而不必重复它们中的任何一个

我的列表当前看起来如下所示:

<ul id="myList">
  <li>Item 1</li>
  <li>Item 2</li>
  <li>Item 3</li>
  <li>Item 4</li>
  <li>Item 5</li>
  <li>Item 6</li>
  <li>Item 7</li>
  <li>Item 8</li>
  <li>Item 9</li>
</ul>
  • 项目1
  • 项目2
  • 项目3
  • 项目4
  • 项目5
  • 项目6
  • 项目7
  • 项目8
  • 项目9

上详细描述了您想要执行的操作


示例:

上描述了您想要做的事情


示例:

这可能会回答您的问题如果您想使用插件,您可以在这里查看最后一个答案:谢谢Prashant。这可能会回答你的问题,如果你想使用插件,你可以在这里查看最后一个答案:谢谢Prashant。看起来就是这份工作。
$(document).ready(function(){
      $('ul').each(function(){
            // get current ul
            var $ul = $(this);
            // get array of list items in current ul
            var $liArr = $ul.children('li');
            // sort array of list items in current ul randomly
            $liArr.sort(function(a,b){
                  // Get a random number between 0 and 10
                  var temp = parseInt( Math.random()*10 );
                  // Get 1 or 0, whether temp is odd or even
                  var isOddOrEven = temp%2;
                  // Get +1 or -1, whether temp greater or smaller than 5
                  var isPosOrNeg = temp>5 ? 1 : -1;
                  // Return -1, 0, or +1
                  return( isOddOrEven*isPosOrNeg );
            })
            // append list items to ul
            .appendTo($ul);            
      });
});