合十!
我的简单问题是$ sortedData在执行时在以下代码中未定义:
(function($) {
$.fn.shuffle = function (){
var i = this.length, j, temp;
if ( i == 0 ) { return; }
while ( --i ) {
j = Math.floor( Math.random() * ( i + 1 ) );
temp = this[i];
this[i] = this[j];
this[j] = temp;
}
};
})(jQuery);
// DOMContentLoaded
$(function() {
// get the first collection
var $cards = $('#cards');
// clone cards to get a second collection
var $data = $cards.clone();
// call Quicksand when button clicked
$('#shuffle').click(function(e) {
// get all the list items
var $filteredData = $data.find('li');
// random sort (shuffling)
var $sortedData = $filteredData.shuffle();
// finally, call quicksand
$cards.quicksand($sortedData, {
duration: 600,
easing: 'easeInOutQuad'
});
});
});
如何调用它:我有一个按钮,当单击它时,执行上面的代码。
我已经检查了shuffle函数中的值,并且在调用shuffle函数之前,但是,当shuffle函数返回时,$ sortedData是未定义的。
错误可能是一个错误的错误,但是,我看不到它。
感谢您的投入!
答案 0 :(得分:3)
你的“随机播放”功能不会返回任何内容,但你会像对待它一样对待它。它似乎在原地洗牌。