2016-11-24 3 views
0

Ich habe eine Seite mit der Breite ist über 100% (2000px). Wenn ich klicke, um Dialog vom Knopf am Ende der Seite (durch die horizontale Seite) zu zeigen, blättert Fenster zum Anfang der Seite (durch horizontale Seite) und zeige den Dialog an.Fenster scrollen, um beim Öffnen Dialog am Ende der Seite

enter image description here

Dies ist mein Code: codepen

$mdDialog.show(
     $mdDialog.alert() 
     .parent(angular.element(document.querySelector('#popupContainer'))) 
     .clickOutsideToClose(true) 
     .title('This is an alert title') 
     .textContent('You can specify some description text in here.') 
     .ariaLabel('Alert Dialog Demo') 
     .ok('Got it!') 
     .targetEvent(ev) 
    ); 
    }; 

I AngularJS 1.5 und neueste Winkel Material js verwenden.

Wie kann ich Dialog von Schaltfläche am Ende der Seite (durch horizontale Seite) und Fenster nicht zum Anfang der Seite blättern?

+0

Ich habe auf Chrome 54.0.2840.99 getestet und scrollt nicht nach links auf der Seite. Die Bildlaufleiste scrollt überhaupt nicht. Welchen Webbrowser und welche Version verwenden Sie? – attomos

+0

Ich habe meine Frage mit Bild aktualisiert. Vielen Dank. Obwohl es nicht nach links scrollt, aber nicht an der aktuellen Position der horizontalen Seite. Wenn ich auf die Schaltfläche klicke, wird die Anzeige auf der linken Seite der Seite angezeigt. Ich möchte, dass am Ende der Seite die aktuelle Position der Seite angezeigt wird. –

+0

Ich habe einen Workaround gefunden. Überprüfen Sie this aus. –

Antwort

0

Sie können das folgende CSS hinzufügen.

.md-dialog-container { 
    width: 2000px; 
} 

md-backdrop { 
    width: 2000px; 
} 

md-dialog { 
    position: absolute; 
    top: 25%; 
    right: 10%; 
} 

Es passt und Breite der Kulisse des Dialog Container.
Dann positionieren Sie den Dialog wie Sie möchten.

Sehen Sie eine funktionierende CodePen.

+0

ok vielen dank –