0

Sequence.js は、次のコードを介して起動されます。

$(document).ready(function(){
    var options = {
        autoPlay: false,
        nextButton: true,
        prevButton: true
    };

    var sequence = $("#sequence").sequence(options).data("sequence");
})

明らかに、最後の行は DOM 要素を識別しています。ですが、AJAX経由で #sequence を読み込むページを作っています。したがって、上記のコードを実行すると存在しません。

.on() を調べましたが、このシナリオに適用する方法がわかりませんでした。

完全なコード:

$(document).ready(function() {

    $("a:not([href^='http://'])").click(function(e){

        $('html,body').animate({
            scrollTop: $("#bigNames").offset().top
        }, 1500);


        var url = $(this).attr("href") + " #cont";

        $('#subContent').fadeOut('slow', function() {

            $('#subContent').load(url, function() {


                var contentHeight = $("#subContent").height();

                $('#bodyContent').animate({
                    height: contentHeight
                }, 'slow', function() {
                    $('#subContent').delay(800).fadeIn('slow');

                }); // close animate

                var options = {
                    autoPlay: false,
                    nextButton: true,
                    prevButton: true
                };


                var sequence = $("#sequence").sequence(options).data("sequence");
            }); // close load
        }); // close fadeout

        return false;
    }); 

    $.waypoints.settings.scrollThrottle = 30;

    $('#chad').waypoint({
       offset: 50
    });

    $('#bigNames').waypoint({
       offset: 5
    });

    $('#chad').waypoint(function(event, direction) {
        if (direction === 'down') {
            $('#smallNames').animate({"opacity": "0"}, 500);
        }
        else {
            $('#smallNames').animate({"opacity": "1"}, 300);
        }
    });



    $('#bigNames').waypoint(function(event, direction) {
        if (direction === 'down') {
            $('#main').css("position", "fixed");
            $('#main').addClass("afixed");
            /* $('#main .span12').animate({"height" : "420"}, "slow", function() { */


                $(this).append('<ul id="subDateAndLoc"><li id="subDate">July 13, 2013</li><li id="subLoc">Greensburg, PA</li></ul>');
                $('#subDateAndLoc').fadeIn("slow");
            /* }); 
            $('#nav').animate({"top" : "112"}, "slow"); */

            $('#bodyContent').css("marginTop", "355px");

        }
        else {
            $('#main').css("position", "relative");
            $('#main').removeClass("afixed");
            /* $('#main .span12').animate({"height" : "500"}, "slow");
            $('#nav').animate({"top" : "160"}, "slow"); */
            $('#bodyContent').css("marginTop", "0px");
            $('#subDateAndLoc').fadeOut("500");
            event.stopPropagation();
        }
    });







});
4

1 に答える 1

3

successこれは、ajax メソッドのコールバック関数で行う必要があります。例えば:

$.ajax({
  url: 'ajax/test.html',
  success: function(data) {
      // activate your plugin here
  }
});
于 2012-07-31T21:18:21.747 に答える