$ionicSideMenuDelegate

授权控制(ionic-china中文网文档)ionSideMenus指令。

该方法直接触发$ionicSideMenuDelegate服务,来控制所有侧栏菜单。用$getByHandle方法控制特定情况下的ionSideMenus

实例该文档来自ionic中文网ionic-china

<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();
  };
}

方法

toggleLeft([isOpen])

切换左侧侧栏菜单(如果存在)。

参数 类型 说明
isOpen
(可空)
boolean

是否打开或关闭菜单 默认:切换菜单

toggleRight([isOpen])

切换右侧侧栏菜单(如果存在)。

参数 类型 说明
isOpen
(可空)
boolean

是否打开或关闭菜单 默认:切换菜单

getOpenRatio()

获取打开菜单内容超出菜单宽度的比例。比如,一个宽度为100px的菜单被宽度为50px以50%的比例打开,将会返回一个比例值为0.5。

  • 返回: float0表示没被打开,如果左侧菜单处于已打开或正在打开为0到1,如果右侧菜单处于已打开或正在打开为0到-1。

isOpen()

  • 返回: boolean判断左侧或右侧菜单是否已经打开。

isOpenLeft()

  • 返回: boolean左侧菜单是否已经打开。

isOpenRight()

  • 返回: boolean右侧菜单是否已经打开。

canDragContent([canDrag])

参数 类型 说明
canDrag
(可空)
boolean

设置是否可以拖动内容打开侧栏菜单。

  • 返回: boolean是否可以拖动内容打开侧栏菜单。

edgeDragThreshold(value)

参数 类型 说明
value boolean|number

设定是否只能在指定边缘拖动的临界值 默认:false 值有三种:

  • 如果为非0 将把这个数值作为最大距离
  • 如果为true 将把默认25像素作为最大距离
  • 如果为false 拖动边缘临界值将被禁用,任何地方拖动都可以打开菜单
  • 返回: boolean当前是否只能在指定边缘拖动。

$getByHandle(handle)

参数 类型 说明
handle string
  • 返回: delegateInstance与'delegate-handle'匹配的句柄,用于控制ionSideMenus菜单。

例如: $ionicSideMenuDelegate.$getByHandle('my-handle').toggleLeft();