Ionic Side Menu
Ein Containerelement enthält das Seitenmenü und den Hauptinhalt. Durch Ziehen des Hauptinhaltsbereichs von einer Seite zur anderen wird das linke oder rechte Seitenmenü umgeschaltet.
Der Effekt ist unten dargestellt:
Nutzung
Um das Seitenmenü zu verwenden, fügen Sie ein übergeordnetes Element `<ion-side-menus>`, einen zwischengeschalteten Inhalt `<ion-side-menu-content>` und eine oder mehrere `<ion-side-menu>`-Direktiven hinzu.
<ion-side-menus> <!-- 中间内容 --> <ion-side-menu-content ng-controller="ContentController"> </ion-side-menu-content> <!-- 左侧菜单 --> <ion-side-menu side="left"> </ion-side-menu> <!-- 右侧菜单 --> <ion-side-menu side="right"> </ion-side-menu> </ion-side-menus>
function ContentController($scope, $ionicSideMenuDelegate) {
$scope.toggleLeft = function() {
$ionicSideMenuDelegate.toggleLeft();
};
}
API
| Attribute | Type | Details |
|---|---|---|
|
enable-menu-with-back-views
(Optional)
|
Boolean value
|
Ob das Seitenmenü aktiviert werden soll, wenn die Zurück-Schaltfläche angezeigt wird. |
| delegate-handle | String | Dieses Handle wird verwendet, um die Scroll-Ansicht mit $ionicScrollDelegate zu identifizieren. |
ion-side-menu-content
Ein Container für den sichtbaren Hauptinhalt, mit einer oder mehreren `ionSideMenu`-Direktiven als Geschwister.
Nutzung
<ion-side-menu-content drag-content="true"> </ion-side-menu-content>
API
| Attribute | Type | Details |
|---|---|---|
|
drag-content
(Optional)
|
Boolean value
|
Ob der Inhalt gezogen werden kann. Standard ist true. |
ion-side-menu
Ein Container für ein Seitenmenü, mit einer `ion-side-menu-content`-Direktive als Geschwister.
Nutzung
<ion-side-menu side="left" width="myWidthValue + 20" is-enabled="shouldLeftSideMenuBeEnabled()"> </ion-side-menu>
API
| Attribute | Type | Details |
|---|---|---|
| side |
String
|
Auf welcher Seite sich das Seitenmenü derzeit befindet. Mögliche Werte sind: `'left'` oder `'right'`. |
|
is-enabled
(Optional)
|
Boolean value
|
Ob das Seitenmenü aktiviert ist. |
|
width
(Optional)
|
Numeric value
|
Wie viele Pixel breit das Seitenmenü sein soll. Standard ist 275. |
menu-toggle
Schaltet das Menü in einem bestimmten Seitenmenü um.
Nutzung
Unten sehen Sie ein Beispiel für einen Link in der Navigationsleiste. Wenn Sie auf diesen Link klicken, wird das angegebene Seitenmenü automatisch geöffnet.
<ion-view> <ion-nav-buttons side="left"> <button menu-toggle="left" class="button button-icon icon ion-navicon"></button> </ion-nav-buttons> ... </ion-view>
menu-close
Schließt das aktuell geöffnete Seitenmenü.
Nutzung
Unten sehen Sie ein Beispiel für einen Link in der Navigationsleiste. Wenn Sie auf diesen Link klicken, wird das angegebene Seitenmenü automatisch geöffnet.
<a menu-close href="../index.html" class="item">首页</a>
$ionicSideMenuDelegate
Diese Methode ruft direkt den Dienst $ionicSideMenuDelegate auf, um alle Seitenmenüs zu steuern. Verwenden Sie die Methode $getByHandle, um ionSideMenus in bestimmten Fällen zu steuern.
Nutzung
<body ng-controller="MainCtrl">
<ion-side-menus>
<ion-side-menu-content>
内容!
<button ng-click="toggleLeftSideMenu()">
切换左侧侧栏菜单
</button>
</ion-side-menu-content>
<ion-side-menu side="left">
左侧菜单!
<ion-side-menu>
</ion-side-menus>
</body>
function MainCtrl($scope, $ionicSideMenuDelegate) {
$scope.toggleLeftSideMenu = function() {
$ionicSideMenuDelegate.toggleLeft();
};
}
Methoden
toggleLeft([isOpen])
Schaltet das linke Seitenmenü um (falls vorhanden).
| Parameters | Type | Details |
|---|---|---|
|
isOpen
(Optional)
|
Boolean value
|
Ob das Menü geöffnet oder geschlossen werden soll. Standard: Menü umschalten. |
toggleRight([isOpen])
Schaltet das rechte Seitenmenü um (falls vorhanden).
| Parameters | Type | Details |
|---|---|---|
|
isOpen
(Optional)
|
Boolean value
|
Ob das Menü geöffnet oder geschlossen werden soll. Standard: Menü umschalten. |
getOpenRatio()
Ermittelt den Anteil des geöffneten Menüinhalts, der die Menübreite überschreitet. Beispiel: Ein Menü mit einer Breite von 100px, das zu 50% (50px) geöffnet ist, gibt einen Verhältniswert von 0.5 zurück.
Rückgabewert:Float. 0 bedeutet nicht geöffnet. Wenn das linke Menü geöffnet ist oder geöffnet wird, ist es 0 bis 1; wenn das rechte Menü geöffnet ist oder geöffnet wird, ist es 0 bis -1.
isOpen()
Rückgabewert:Boolean, bestimmt, ob das linke oder rechte Menü bereits geöffnet ist.
isOpenLeft()
Rückgabewert:Boolean, ob das linke Menü bereits geöffnet ist.
isOpenRight()
Rückgabewert:Boolean, ob das rechte Menü bereits geöffnet ist.
canDragContent([canDrag])
| Parameters | Type | Details |
|---|---|---|
|
canDrag
(Optional)
|
Boolean value
|
Legt fest, ob der Inhalt gezogen werden kann, um das Seitenmenü zu öffnen. |
Rückgabewert:Boolean, ob der Inhalt gezogen werden kann, um das Seitenmenü zu öffnen.
$getByHandle(handle)
| Parameters | Type | Details |
|---|---|---|
| handle |
String
|
Zum Beispiel:
$ionicSideMenuDelegate.$getByHandle('my-handle').toggleLeft();
Weitere Erweiterungen