EventEmitter funktioniert nicht in Chrome / Safari

Ich habe (mit viel Hilfe) die folgende Anweisung erstellt, in der ich die Y-Position eines Bildschirms verfolge und ein Ereignis mit diesen Informationen auslöse.

import {Directive, Output, EventEmitter} from "angular2/core";

@Directive({
    selector: '[track-scroll]',
    host: {'(window:scroll)': 'track($event)'},

})

export class TrackScrollDirective {
    @Output('pageYPositionChange') pageYPositionChange: EventEmitter<any> = new EventEmitter();


    track($event: any) {
        this.pageYPositionChange.emit($event.pageY);
    }
}

Und versuchen, dieses Ereignis in einer Komponente abzuhören:

import {TrackScrollDirective} from "../directives/track-scroll.directive";

@Component({
    selector: 'app-header',
    moduleId: module.id,
    templateUrl: './app-header.component.html',
    directives: [Collapse, DROPDOWN_DIRECTIVES, ROUTER_DIRECTIVES, TrackScrollDirective]
})

export class AppHeader {
    public isCollapsed:boolean = false;

    pageY: number = 0;

    constructor (
        public authService: AuthenticationService
    ) {}

    onPageYChange(pageY: number) {
        this.pageY = pageY;
        console.debug("PageY Pos ", pageY );
    }
}

wo in der Vorlage dieser Komponente haben wir wie folgt:

<nav class="navbar navbar-default navbar-fixed-top top-navbar" track-scroll (pageYPositionChange)="onPageYChange($event)" [ngClass]="{floating: pageY > 10}">

Alles funktioniert wunderbar in FF, aber das wars auch schon, sonst nirgends. (versuchte Safari, Chrom)

Was fehlt? Mein einziger Gedanke ist, dass ich das falsche @ benutzEventEmitter

AKTUALISIERE

Offenbar$event.pageY existiert nicht in Chrom ... und tatsächlich gibt es überhaupt keine Informationen über die Seitenposition. Woher bekomme ich es?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage