素材网 素材网

jquery实在自动查询数据排序算法动画特效

下载资源()次

阅读次数()次

发布时间:2014-04-19

jquery实在自动查询数据排序算法动画特效
分享到:

用法简介:

来源:xw素材网

jquery实在自动查询数据排序算法动画特效。
文件引用:

/生成count个 范围在maxs-mins之间不重复的随机数
function getRandom(mins, maxs, count) {
    if (maxs - mins < count - 1) {
        return false;
    }
    var _this = {
        limit:{
            maxs:maxs,
            mins:mins,
            count:count
        },
        rondomArr:[]
    };
    _this.randomFunc = function() {
        return parseInt(Math.random() * (_this.limit.maxs - _this.limit.mins + 1) + _this.limit.mins);
    };
    _this.in_array = function(val) {
        for (var i = 0; i < _this.rondomArr.length && _this.rondomArr[i] != val; i++) ;
        return !(i == _this.rondomArr.length);
    };
    _this.getRandomArr = function() {
        for (var i = 0; i < _this.limit.count; i++) {
            var val = _this.randomFunc();
            if (_this.in_array(val)) {
                i--;
            } else {
                _this.rondomArr.push(val);
            }
        }
        return _this.rondomArr;
    };
    return _this.getRandomArr();
}
//冒泡算法动画;
function bubbleSort(arr) {
    var i = arr.length, j;
    var tempExchangVal;
    var timeDo = function() {
        var time1 = window.setTimeout(function() {
            if (i > 0) {
                j = 0;
                var time2 = window.setInterval(function() {
                    if (j < i - 1) {
                        changeBox(j, "pass");
                        if (arr[j] > arr[j + 1]) {
                            tempExchangVal = arr[j];
                            arr[j] = arr[j + 1];
                            arr[j + 1] = tempExchangVal;
                            //演示用容器;
                            changeBox(j, "changeEnd", arr[j]);
                            changeBox(j + 1, "change", tempExchangVal);
                        }
                        j++;
                    } else {
                        window.clearInterval(time2);
                        removeBoxColor();
                        i--;
                        timeDo();
                    }
                }, $speed);
            } else {
                //结束;
                doEnd(arr);
            }
        }, $speed);
    };
    timeDo();
}
//鸡尾酒算法动画;
function cocktailSort(arr) {
    var i = 0, j;
    var timedo = function() {
        var time = window.setTimeout(function() {
            if (i < arr.length / 2) {
                j = i;
                var time2 = window.setInterval(function() {
                    if (j >= arr.length - i - 1) {
                        window.clearInterval(time2);
                        var k = arr.length - i;
                        var time3 = window.setInterval(function() {
                            if (k <= i) {
                                removeBoxColor();
                                window.clearInterval(time3);
                                timedo();
                            }
                            changeBox(k, "pass");
                            if (arr[k] > arr[k + 1]) {
                                var temp = arr[k];
                                arr[k] = arr[k + 1];
                                arr[k + 1] = temp;
                                changeBox(k, "changeEnd", arr[k]);
                                changeBox(k + 1, "change", temp);
                            }
                            k--;
                        }, $speed);
                    }
                    changeBox(j, "pass");
                    if (arr[j] < arr[j - 1]) {
                        var temp = arr[j];
                        arr[j] = arr[j - 1];
                        arr[j - 1] = temp;
                        changeBox(j - 1, "changeEnd", temp);
                        changeBox(j, "change", arr[j]);
                    }
                    j++;
                }, $speed);
            } else {
                doEnd(arr);
            }
            i++;
        }, $speed);
    };
    timedo();
}


   

相关标签:

网友评论:

评论

发表 剩余字数:20

一、不得利用本站危害国家安全、泄露国家秘密,不得侵犯国家社会集体的和公民的合法权益,不得利用本站制作、复制和传播不法有害信息!

二、互相尊重,对自己的言论和行为负责。

@ 2013 xwcms.net . All Rights Reserved. xw素材网 | 备案号:晋ICP备13005902号 联系管理员
×

邮箱订阅

什么是邮箱订阅?

邮箱订阅是xw素材网为jquery爱好者与web程序员提供一项以邮箱的方式发送最新jquery资源与素材资源的模式,用户只需在左侧填写正确的邮箱用户名与邮箱地址我们将每天推荐最新优质资源到用户邮箱。当然每份邮箱都会有一个取消订阅按钮,当用户点击取消按钮时我们将会停止对用户发送邮箱资源推送。再次感谢大家对xw素材网的支持与关注。