Frage zu Funktion

Hallo,
ich habe leider noch nicht ganz verstanden warum die folgende Funktion bei jedem scrollen ausgeführt wird.
Kann mir jemand sagen warum?

[CODE] $window.bind(
‚scroll.layout‘,
function()
{
var st = $html.scrollTop();

        for ( var a = 0, l = sections.length; a < l; a++ )
        {
            var id = sections[ a ];
            console.log(id);

            if ( st > $('#' + id).offset().top - 250)
            {
                if ( !$page.hasClass( id ) )
                {
                    $page.removeAttr( 'class' );
                    $page.addClass( id );
                }
                break;
            }
        }
    }
).trigger( 'scroll.layout' );[/CODE]

Vielleicht weil du genau das programmiert hast?
Wenn sie nur einmal aufgerufen werden soll, dann nimm doch http://api.jquery.com/one/

Alternativ kannst du den EventListener auch wieder entfernen in der Funktion:

$(window).bind('scroll.layout',function () { // mach was $(this).unbind('scroll.layout'); });

Edit:
Mir ist gerade aufgefallen, durch dein .trigger( ‚scroll.layout‘ ); frage ich mich wieso du das ganze überhaupt in ein Scroll-Event packst wenn es ohnehin nur einmal ausgeführt werden soll.