3

http://www.infinite-scroll.com/infinite-scroll-jquery-plugin/を使用して無限スクロール機能を提供していますが、プラグインのデフォルト設定は次のリンクの href 属性に依存して現在のページを開き、次の結果セットを ajaxily にロードします。

私はすでに自分の JavaScript オブジェクトで結果のオフセットとページサイズを追跡しており、infinitescroll プラグインで window.LoadMore 関数を呼び出して次の結果をロードしたいだけです。プラグイン コードを確認したところ、ロードをオーバーライドする必要があるようです。 start 関数 (特に beginAjax) 、

        opts.loading.start = opts.loading.start || function() {

            $(opts.navSelector).hide();
            opts.loading.msg
                .appendTo(opts.loading.selector)
                .show(opts.loading.speed, function () {
                    beginAjax(opts);
            });
        };

これはオーバーライドするのに適切な機能ですか? はいの場合、プラグインの初期化からこれを行うには、以下のコードは機能しません

        ($('.deals-list'), this.el).infinitescroll({
            navSelector  : "div.navigation",
            nextSelector : "div.navigation a",
            itemSelector : ".deal",
            debug: true,
            loading.start: function(){
                alert('testing');
            }
        });

ありがとう。

イェヒア

4

4 に答える 4

0

カスタムソリューションがあります。私はそれを使用しています

(function($, undefined) {
	$.extend($.infinitescroll.prototype,{
		_setup_loadOffers: function infscr_setup_loadOffers () {
			var opts = this.options,
			instance = this;
			// Bind nextSelector link to retrieve
			$('a.btn-seemore-offers').click(function(e) {
				instance.retrieve();
			});
			
		},
	});
})(jQuery);
$('#container').infinitescroll({behavior: 'loadOffers',})

于 2015-11-09T10:45:06.267 に答える
0

無限スクロール機能にあまり詳しくないので、それがオーバーライドする正しい機能かどうかについて話すことはできません。一見しただけで、おそらくそうだと言えます。

これを試して:

($('.deals-list'), this.el).infinitescroll({
    navSelector  : "div.navigation",
    nextSelector : "div.navigation a",
    itemSelector : ".deal",
    debug: true,
    loading: { 
        start: function(){
            alert('testing');
        }
    }

});
于 2012-11-30T14:22:30.733 に答える