詳解AngularJS 模態對話方塊,詳解angularjs模態

來源:互聯網
上載者:User

詳解AngularJS 模態對話方塊,詳解angularjs模態

在涉及GUI程式開發的過程中,常常有模態對話方塊以及非模態對話方塊的概念

模態對話方塊:在子介面活動期間,父視窗是無法進行訊息響應。獨佔使用者輸入

非模態對話方塊:各視窗之間不影響

主要區別:非模態對話方塊與APP共用訊息迴圈,不會獨佔使用者。

模態對話方塊獨佔使用者輸入,其他介面無法響應

本文內容

Angular JS 實現強制回應對話方塊。基於 AngularJS v1.5.3 和 Bootstrap v3.3.6。

項目結構

 

圖 1 項目結構

運行結果

圖 1 運行結果:大模態

index.html

<!DOCTYPE html><!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"><![endif]--><!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"><![endif]--><!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]--><!--[if gt IE 8]><!--><html class="no-js"><!--<![endif]--><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"><meta name="viewport" content="width=device-width"><title>AngularJS 模態對話方塊</title><link rel="stylesheet" href="../src/vendor/bootstrap/dist/css/bootstrap.css"></head><body ng-app="myApp" class="body"> <!-- modal template --> <script type="text/ng-template" id="myModelContent.html"> <div class="modal-header"> <h3 class="modal-title">模態框</h3> </div> <div class="modal-body"> <ul> <li ng-repeat="item in items"> <a ng-click="selected.item = item">{{item}}</a> </li> <div class="h2">當前選擇:<b>{{selected.item}}</b></div> </ul> </div> <div class="modal-footer"> <button class="btn btn-primary" ng-click="ok()"> 確認 </button> <button class="btn btn-warning" ng-click="cancel()">退出</button> </div> </script> <div class="container h1">AngularJS 模態對話方塊</div> <section class="row"> <section ng-controller="modalDemo" class="col-md-6" style="margin: 40px auto; float: none; background: #fff; padding: 30px;"> <button class="btn btn-default" ng-click="open('lg')">大模態</button> <button class="btn btn-default" ng-click="open()">中模態</button> <button class="btn btn-default" ng-click="open('sm')">小模態</button> <hr> <div class="h1" ng-show="selected">當前選擇:{{selected}}</div> </section> </section> <!-- load js --> <script src="../src/vendor/angular/angular.js"></script> <script src="http://cdn.bootcss.com/angular-ui-bootstrap/0.11.2/ui-bootstrap-tpls.js"></script> <script src="../src/js/mymodal.js"></script></body></html> 

mymodal.js

/** * */angular.module('myApp', [ 'ui.bootstrap' ])// demo controller.controller('modalDemo', function($scope, $modal, $log) { // list $scope.items = [ 'angularjs', 'backbone', 'canjs', 'Ember', 'react' ]; // open click $scope.open = function(size) { var modalInstance = $modal.open({ templateUrl : 'myModelContent.html', controller : 'ModalInstanceCtrl', // specify controller for modal size : size, resolve : { items : function() { return $scope.items; } } }); // modal return result modalInstance.result.then(function(selectedItem){ $scope.selected = selectedItem; }, function() { $log.info('Modal dismissed at: ' + new Date()) }); }})// modal controller.controller('ModalInstanceCtrl', function($scope, $modalInstance, items) { $scope.items = items; $scope.selected = { item : $scope.items[0] }; // ok click $scope.ok = function(){ $modalInstance.close($scope.selected.item); }; // cancel click $scope.cancel = function() { $modalInstance.dismiss('cancel'); }});

以上內容是小編給大家介紹的AngularJS 模態對話方塊 ,希望對大家有所協助!

您可能感興趣的文章:
  • angularjs用戶端實現壓縮圖片檔案並上傳執行個體
  • AngularJS+Node.js實現線上聊天室
  • angularJS與bootstrap結合實現動態載入彈出提示內容
  • 執行個體詳解angularjs和ajax的結合使用
  • 簡介AngularJS中$http服務的用法
  • 學習使用AngularJS檔案上傳控制項
  • AngularJs 彈出模態框(model)

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.