HTML脚本
<div style="height:48px;"> <div ng-controller="ReportNavCtrl" style="height:48px;width:100%;background-color:#f0f0f0;border-bottom:1px solid #E0E0E0;position:fixed;left:0;top:0;z-index:999999999;"> <table style="width:100%;height:100%;table-layout: fixed;"> <tr> <td ng-click="goBack()" style="vertical-align:middle;width:70px;padding-right:5px;text-align:center;font-size:28px;color:#333333;"> <span class="fa fa-angle-left"></span> </td> <td ng-click="showPageListPanel()" style="vertical-align:middle;text-align:center;"> <div ng-bind-html="pageTitleHtml" style="font-size:16px;font-weight:bolder;height: 44px;line-height:44px;"></div> <div style="height:10px;margin-top:-10px;text-align:center;display:none;" ng-style="{'display': reportPages.length > 1 ? 'block' : 'none'}"> <span ng-repeat="reportPage in reportPages" style="font-size:8px;color:#bbb;margin-right: 2px;"> <i class="fa fa-circle" ng-style="{'color': reportPage.key === currentReportPage.key ? '#0E58DE' : '#bbbbbb'}"></i> </span> </div> </td> <td style="vertical-align:middle;width:70px;text-align:center;font-size:20px;color:#333333;"> <div style="float:right;" class="user-info all-easein-animation wait-for-page-ready" uib-dropdown dropdown-append-to-body> <div style="display:none;" ng-style="{'display': showSettingBtn ? 'block' : 'none'}"> <div style="padding: 0 6px;" id="btn-append-to-body" type="button" uib-dropdown-toggle><div style="float:left;max-width:120px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;"><i class="fa fa-gear"></i></div></div> <ul class="uib-dropdown-menu dropdown-menu-right" role="menu" aria-labelledby="btn-append-to-body" style="z-index:1001111110;"> <li role="menuitem"><a href="javascript:" ng-click="startAnnotate($event)"><i class="fa fa-user" style="margin-right:10px;"></i>批注</a></li> <li class="divider"></li> <li role="menuitem"><a href="javascript:" ng-click="refreshReport($event)"><i class="fa fa-refresh" style="margin-right:10px;"></i>刷新报表</a></li> <li class="divider" ng-show="shouldAuditReport"></li> <li role="menuitem" ng-show="shouldAuditReport"><a href="javascript:" ng-click="auditReport($event)"><i class="fa fa-sign-out" style="margin-right:10px;"></i>报表审核</a></li> </ul> </div> </div> </td> </tr> </table> </div> </div>
JS脚本
//设置导航栏高度 pageRuntimeContext.pageContentPosTop = "48px"; //导航栏Controller vsApp.controller('ReportNavCtrl', ['$scope', '$element', '$timeout', '$sce', '$http', 'toaster', function($scope, $element, $timeout, $sce, $http, toaster) { var pageTitleHtml = "<span>"+reportPage.name+"</span>"; $scope.pageTitleHtml = $sce.trustAsHtml(pageTitleHtml); $scope.currentReportPage = reportPage; $scope.reportPages = reportPages; //点击导航栏返回按钮 $scope.goBack = function(){ VSEngine.reportService.goBack(); } $scope.startAnnotate = function(){ VSEngine.reportService.annotateOn(); } $scope.refreshReport = function(){ VSEngine.reportService.refreshReport(); } $scope.auditReport = function(){ var params = { reportId: reportId, type: "like" } if(!VSEngine.isWebDevice){ var session = VSEngine.requestService.getSession(); params.appId = session.appId; params.accessToken = session.accessToken; } var url = $scope.getPathPrefix()+"/mobile/v2/report/audit.do"; $scope.postingData = true; VSUtils.post($http, url, params, function(response){ $scope.postingData = false; if(response.data.success){ toaster.success({body: "报表审核成功"}); $scope.loadReportInfo(); } else { toaster.error({body: response.data.message}); } }, function(response){ $scope.postingData = false; toaster.error({body: "网络连接失败,请重试"}); }); } //加载报表信息,检查[设置]菜单是否需要显示“报表审核”选项 $scope.loadReportInfo = function(){ var params = { reportId: reportId } if(!VSEngine.isWebDevice){ var session = VSEngine.requestService.getSession(); params.appId = session.appId; params.accessToken = session.accessToken; } var url = $scope.getPathPrefix()+"/mobile/v2/report.do"; VSUtils.post($http, url, params, function(response){ if(response.data.success){ var report = response.data.data; $scope.shouldAuditReport = report.isReportAuditor && (report.auditDate == null || report.auditDate === ""); } else { toaster.error({body: response.data.message}); } }, function(response){ console.log(response); }); } //点击导航栏设置按钮 $scope.showSettingMenu = function(){ VSEngine.reportService.showSettingMenu(); } //显示页面列表 $scope.showPageListPanel = function(){ VSEngine.reportService.showPageListPanel(); } //页面加载完毕后再显示设置按钮 $timeout(function(){ $scope.showSettingBtn = true; }); }]);