0

如何在页面加载之前使用 jQuery 随机列表?

我在网上找到了这个例子:http ://whatanswered.com/websites-javascript/random-elements-using-jquery.php (你必须向下滚动一下才能看到)

但它只有在鼠标按下按钮后才能工作。*这是我的问题,我需要它在页面加载之前自动工作。

有任何想法吗?

我复制了这个FIDDLE中的代码,如果有人愿意提供帮助,它可能会有用!

$(function() {
  $('button').click(function() {
    $("div.list").randomize("div.cat");
  });
});
(function($) {
$.fn.randomize = function(childElem) {
  return this.each(function() {
      var $this = $(this);
      var elems = $this.children(childElem);
      elems.sort(function() { return (Math.round(Math.random())-0.8); });  
      $this.remove(childElem);  
      for(var i=0; i < elems.length; i++)
        $this.append(elems[i]);      
  });    
}
})(jQuery);
4

3 回答 3

1

您可以randomize在页面加载时调用插件 - 请注意,尽管插件需要事先加载:

$(function() {      
    $("div.list").randomize("div.cat");
});

更新小提琴:http: //jsfiddle.net/yNChm/1/

于 2013-08-15T15:36:33.933 回答
0

最简单的方法是在 document.ready 事件触发后调用 randomize() 函数:

$(document).ready(function() {
 $("div.list").randomize("div.cat");
});
于 2013-08-15T15:36:04.537 回答
0

您应该能够通过执行 $(window).ready 或类似的方式来完成此操作:

$(function() {
   console.log('Yo');
   $("div.list").randomize("div.cat");
});

确保先注册插件!

于 2013-08-15T15:40:40.213 回答