打开和关闭运行时Stellar.js

时间:2014-08-05 01:03:02

标签: javascript stellar.js

有没有办法在代码中打开和关闭stellar.js?我试图用不同的参数调用“恒星”方法,但似乎只能使用一次:

    $(document).ready(function() {
        $.stellar({
                verticalScrolling: true,
                verticalOffset: 0,
            });

        $.stellar({
                verticalScrolling: false, // is not turning scrolling off
                verticalOffset: 0,
            });

    });

1 个答案:

答案 0 :(得分:2)

如果要重新加载插件,请在调用初始化函数之前重置它。

检查stellar.js中的功能代码。如果选项==='destroy',则重置插件stellar。

$.fn[pluginName] = function (options) {
    var args = arguments;
    if (options === undefined || typeof options === 'object') {
        return this.each(function () {
            if (!$.data(this, 'plugin_' + pluginName)) {
                $.data(this, 'plugin_' + pluginName, new Plugin(this, options));
            }
        });
    } else if (typeof options === 'string' && options[0] !== '_' && options !== 'init') {
        return this.each(function () {
            var instance = $.data(this, 'plugin_' + pluginName);
            if (instance instanceof Plugin && typeof instance[options] === 'function') {
                instance[options].apply(instance, Array.prototype.slice.call(args, 1));
            }
            if (options === 'destroy') {
                $.data(this, 'plugin_' + pluginName, null);
            }
        });
    }
};

所以你的代码如下:

$(document).ready(function() {
    $.stellar({
            verticalScrolling: true,
            verticalOffset: 0,
        });

    $.stellar("destroy");

    $.stellar({
            verticalScrolling: false, // is not turning scrolling off
            verticalOffset: 0,
        });

});