亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JavaScript > 正文

Angular.js與Bootstrap相結合實現手風琴菜單代碼

2019-11-20 10:16:19
字體:
來源:轉載
供稿:網友

標題定的是angularjs與bootstrap相結合實現手風琴菜單,其實也就是用的bootstrap的樣式。

在上篇文章給大家介紹了Angular.js與Bootstrap相結合實現表格分頁代碼。接著學習實現的Demo。

主要練習自定義指令,向指令中傳遞參數,老規矩先上效果圖:

<my-page ng-repeat="item in expanders" page-title="item.title">{{item.text}}</my-page> 

上面是我自定義的指令,菜單存在標題和內容3條用了 ng-repeat來渲染。

指令基本API如下:

app.directive('myDirective',function(){return {//restrict: 默認為A(屬性,默認值)<div my-directive=''></div> E(元素)C(類名)M(注釋)//這里考慮到瀏覽器的兼容性通常我們用所有瀏覽器都認識的A類型restrict: 'A',//優先級設置,默認是0,較大的優先調用priority: 0,//這個參數用來告訴AngularJS停止運行當前元素上比本指令優先級低的指令。但同當前指令優先級相同的指令還是會被執行。terminal: false,//字符串或函數: 字符串<a></a>(指令內容)//注:必須存在一個根DOM元素//一個可以接受兩個參數的函數,參數為tElement和tAttrs,并返回一個代表模板的字符串 //function(tElement, tAttrs) { ... }template: '', //從指定的url地址加載模板templateUrl: '',//如果設置了這個參數,值必須為truereplace: false,//指定指令的作用域scope:'',//transclude:'',//string//function(scope, element, attrs, transclude, otherInjectables) { ... }controller:'',//controllerAs: '',//require: '',//以編程的方式操作DOM,包括添加監聽器等link: function postLink(scope, iElement, iAttrs) {},//compile: // 返回一個對象或連接函數,如下所示:function(tElement, tAttrs, transclude) {return {pre: function(scope, iElement, iAttrs, controller) { },post: function(scope, iElement, iAttrs, controller) { }}// 或者return function postLink() { }};};}) 

如何切換的時候讓其他的隱藏呢,這里主要用到指令ng-show,記錄當前點擊的,來隱藏其他的。

具體代碼注釋如下:

<style type="text/css">.con {margin: 0 auto;width: 600px;margin-top: 100px;}.panel {width: 580px;}.panel-heading {cursor: pointer;}</style><link rel="stylesheet"  /><div class="con" ng-app="myApp" ng-controller="myCtrl"><my-page ng-repeat="item in expanders" page-title="item.title">{{item.text}}</my-page></div><script src="http://apps.bdimg.com/libs/angular.js/1.5.0-beta.0/angular.js"></script><script type="text/javascript">var app = angular.module('myApp', []);app.directive('myPage', function () {return {restrict: 'EA',replace: true,transclude: true, //是否將元素內容轉移到模版中scope: {title: "=pageTitle"},template: ['<div class="panel panel-info">','<div class="panel-heading" ng-click="toggle();">','<h3 class="panel-title" >{{title}}</h3>','</div>','<div class="panel-body" ng-show="showMe" ng-transclude></div>','</div>'].join(""),link: function (scope, element, attrs) {scope.showMe = false;scope.$parent.addExpander(scope); //保存所有菜單scope.toggle = function toggle() {scope.showMe = !scope.showMe; //隱藏顯示scope.$parent.goToExpander(scope);}}};})app.controller('myCtrl', function ($scope) {$scope.expanders = [{title: 'AngularJS',text: 'AngularJS 誕生于2009年,由Misko Hevery 等人創建,后為Google所收購。是一款優秀的前端JS框架,已經被用于Google的多款產品當中。AngularJS有著諸多特性,最為核心的是:MVVM、模塊化、自動化雙向數據綁定、語義化標簽、依賴注入等等。'}, {title: 'jQuery',text: 'JQuery是繼prototype之后又一個優秀的Javascript庫。它是輕量級的js庫 ,它兼容CSS3,還兼容各種瀏覽器(IE 6.0+, FF 1.5+, Safari 2.0+, Opera 9.0+),jQuery2.0及后續版本將不再支持IE6/7/8瀏覽器。jQuery使用戶能更方便地處理HTML(標準通用標記語言下的一個應用)、events、實現動畫效果,并且方便地為網站提供AJAX交互。jQuery還有一個比較大的優勢是,它的文檔說明很全,而且各種應用也說得很詳細,同時還有許多成熟的插件可供選擇。jQuery能夠使用戶的html頁面保持代碼和html內容分離,也就是說,不用再在html里面插入一堆js來調用命令了,只需要定義id即可。'}, {title: 'Bootstrap',text: 'Bootstrap,來自 Twitter,是目前很受歡迎的前端框架。Bootstrap 是基于 HTML、CSS、JAVASCRIPT 的,它簡潔靈活,使得 Web 開發更加快捷。 它由Twitter的設計師Mark Otto和Jacob Thornton合作開發,是一個CSS/HTML框架。Bootstrap提供了優雅的HTML和CSS規范,它即是由動態CSS語言Less寫成。Bootstrap一經推出后頗受歡迎,一直是GitHub上的熱門開源項目,包括NASA的MSNBC(微軟全國廣播公司)的Breaking News都使用了該項目。 國內一些移動開發者較為熟悉的框架,如WeX5前端開源框架等,也是基于Bootstrap源碼進行性能優化而來。'}];var expanders = []; //記錄所有菜單$scope.addExpander = function (expander) {expanders.push(expander);};$scope.goToExpander = function (selectedExpander) {expanders.forEach(function (item, index) {if (item != selectedExpander) { //隱藏非當前選項卡item.showMe = false;}})}});</script>
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
91精品久久久久久久| 国产精品极品在线| 国产成一区二区| 操91在线视频| 久久午夜a级毛片| 国内精品久久久久伊人av| 久久国产加勒比精品无码| 国产精品免费网站| 午夜精品久久久久久久久久久久久| 欧美大片在线影院| 欧美日韩精品在线播放| 亚洲黄色在线观看| 国产日韩欧美影视| xxxx性欧美| 欧亚精品在线观看| 国内精品久久久久久久久| 91精品国产精品| 久久影院资源站| 亚洲国产日韩欧美综合久久| 欧美男插女视频| 国产精品嫩草影院久久久| 亚洲精品国产品国语在线| 久久久亚洲成人| 国产精品久久久久免费a∨大胸| 日韩在线观看免费全| 亚洲色图激情小说| 91精品久久久久久久| 亚洲福利在线观看| 日韩欧美第一页| 欧美亚州一区二区三区| 国产精品香蕉av| 亚洲精品视频中文字幕| 福利视频导航一区| 日韩欧美国产一区二区| 中文字幕不卡av| 亚洲欧美制服综合另类| 国产亚洲精品久久久久久牛牛| 91九色在线视频| 最近2019免费中文字幕视频三| 久久人人爽人人爽人人片av高清| 日本乱人伦a精品| 国产精品视频男人的天堂| 国内成人精品视频| 精品亚洲va在线va天堂资源站| 久久天天躁狠狠躁夜夜av| 九九视频直播综合网| 38少妇精品导航| 国产成人久久久精品一区| 国产精品色悠悠| 成人激情电影一区二区| 57pao成人永久免费视频| 亚洲成av人乱码色午夜| 久久6精品影院| 亚洲精品电影在线观看| 欧美剧在线观看| 亚洲精品国产精品久久清纯直播| 另类少妇人与禽zozz0性伦| 亚洲国产欧美日韩精品| 国产综合视频在线观看| 亚洲欧美日韩精品| 性日韩欧美在线视频| 国产精品高清在线观看| 成人国内精品久久久久一区| 97视频在线播放| 亚洲国产99精品国自产| 国产99久久精品一区二区 夜夜躁日日躁| 日韩av综合网站| 欧美国产欧美亚洲国产日韩mv天天看完整| 亚洲jizzjizz日本少妇| 国产欧美日韩中文| 日韩最新免费不卡| 亚洲欧美激情另类校园| 日韩有码在线观看| 亚洲色图色老头| 精品偷拍一区二区三区在线看| 国产精品扒开腿爽爽爽视频| 隔壁老王国产在线精品| 91中文字幕一区| 98视频在线噜噜噜国产| 久久男人资源视频| 欧美日韩国产在线| 日韩av免费看| 久久亚洲精品成人| 国产精品视频免费在线观看| 成人中心免费视频| 96sao精品视频在线观看| 国产综合福利在线| 日韩精品免费观看| 日韩高清欧美高清| 日韩中文字幕免费视频| 欧美黑人极品猛少妇色xxxxx| 精品一区电影国产| 欧美又大又硬又粗bbbbb| 欧美一区二区三区……| 福利微拍一区二区| 国内精品久久久久| 色婷婷综合成人av| 欧美精品18videosex性欧美| 国产经典一区二区| 国产精品亚发布| 国产精品激情自拍| 国产国语刺激对白av不卡| 欧美国产视频日韩| 国产主播喷水一区二区| 久久频这里精品99香蕉| 久久精品视频网站| 日韩在线视频线视频免费网站| 亚洲一区二区三区777| 欧美成人亚洲成人日韩成人| 久久久999精品| 日韩一二三在线视频播| 久久久国产一区二区| 久久久久久国产精品久久| 久久韩国免费视频| 亚洲色图av在线| 国产a∨精品一区二区三区不卡| 欧美性猛交视频| 欧美精品videofree1080p| 国产一区二区在线免费视频| 欧美高清视频在线播放| 亚洲成人精品视频在线观看| 中国china体内裑精亚洲片| 亚洲欧美一区二区三区久久| 欧美激情一级精品国产| 亚洲人成网站999久久久综合| 国产在线观看精品| 精品久久久久久亚洲精品| 都市激情亚洲色图| 国产精品久久久久久亚洲影视| 国产成人在线一区| 国产专区欧美专区| 一区二区三区无码高清视频| 国产欧美精品在线| 久久精品人人爽| 性色av一区二区三区在线观看| 日韩久久午夜影院| 国产精品一区二区3区| 中文字幕欧美日韩va免费视频| 国产亚洲精品久久久久久牛牛| 久99久在线视频| 国产精品第1页| 欧美精品亚州精品| 欧美老女人在线视频| 国产精品69av| 91精品久久久久久久久久入口| 丝袜亚洲欧美日韩综合| 2023亚洲男人天堂| 亚洲国产成人精品一区二区| 久久久久久久久久久成人| 国产精品入口夜色视频大尺度| 日韩毛片在线看| 国产一区二区免费| 国产精品视频自拍| 国产精品国产福利国产秒拍| 亚洲人成在线观看网站高清| 亚洲字幕在线观看| 成人国产精品一区二区| 亚洲人成网在线播放| 中文字幕亚洲二区| 欧美午夜性色大片在线观看| 久久人人看视频| 亚洲wwwav| 亚洲成人动漫在线播放| 国产丝袜一区二区三区|