AngularJS tab栏实现和mvc小案例实例详解

tab栏:

代码:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Tab 标签</title>
  <style>
    body {
      margin: 0;
      padding: 0;
      background-color: #F7F7F7;
    }
    .tabs {
      width: 400px;
      margin: 30px auto;
      background-color: #FFF;
      border: 1px solid #C0DCC0;
      box-sizing: border-box;
    }
    img {
      width: 400px;
    }
    .tabs nav {
      height: 40px;
      text-align: center;
      line-height: 40px;
      overflow: hidden;
      background-color: #C0DCC0;
      display: flex;
    }
    nav a {
      display: block;
      width: 100px;
      border-right: 1px solid #FFF;
      color: #000;
      text-decoration: none;
    }
    nav a:last-child {
      border-right: 0 none;
    }
    nav a.active {
      background-color: #9BAF9B;
    }
    .cont {
      overflow: hidden;
      /*display: none;*/
    }
    .cont ol {
      line-height: 30px;
    }
    p {
      text-align: center;
      height: 30px;
      line-height: 30px;
    }
    li {
      list-style: none;
      height: 30px;
      line-height: 30px;
    }
  </style>
  <!--[if lte IE 6]>
  <![endif]-->
</head>
<body ng-app="Tabs">
  <div class="tabs" ng-controller="TabsController">
    <nav>
    <!-- 指令之间没有分号 -->
      <a href="javascript:;" ng-class="{active: type == 'local'}" ng-mouseover="switch('local')">白山茶</a>
      <a href="javascript:;" ng-class="{active: type == 'global'}" ng-mouseover="switch('global')">作曲</a>
      <a href="javascript:;" ng-class="{active: type == 'sports'}" ng-mouseover="switch('sports')">背景</a>
      <a href="javascript:;" ng-class="{active: type == 'funny'}" ng-mouseover="switch('funny')">歌词</a>
    </nav>
    <div ng-switch on="type">
      <section class="cont" ng-switch-when="local">
        <p>2017.5.24</p>
      </section>
      <section class="cont" ng-switch-when="global">
        <p>作曲:陈雪凝</p>
        <p>作词:陈雪凝</p>
        <p>编曲:海艺音乐</p>
      </section>
      <section class="cont" ng-switch-when="sports">
          <img src="bsc.png">
      </section>
      <section class="cont" ng-switch-when="funny">
        <ul>
          <li>你认真的说你喜欢白山茶</li>
          <li>怡然自得的收起别的红玫瑰</li>
          <li>你温柔的说你眷恋我</li>
          <li>然后迫不及待的爱别人</li>
          <li>然后迫不及待的爱别人</li>
          <li>然后迫不及待的爱别人</li>
          <li>然后迫不及待的爱别人</li>
        </ol>
      </section>
    </div>
  </div>
  <script src="../../js/angular.min.js"></script>
  <script>
    angular.module('Tabs',[]).controller('TabsController',['$scope',function($scope){
       $scope.type = 'local';
       $scope.switch = function(type){
        $scope.type = type;
       }
    }]);
  </script>
</body>
</html> 

mvc小案例:

代码:

<!doctype html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>Template • TodoMVC</title>
    <!-- <link rel="stylesheet" href="css/base.css"> -->
    <link rel="stylesheet" href="css/index.css">
    <!-- CSS overrides - remove if you don't need it -->
    <link rel="stylesheet" href="css/app.css">
  </head>
  <body ng-app="Todos">
    <section class="todoapp" ng-controller="TodoController">
      <header class="header">
        <h1>todos</h1>
        <form ng-submit="add()">
        <!-- 用户输入点 -->
          <input class="new-todo" placeholder="What needs to be done?" ng-model="text" autofocus>
        </form>
      </header>
      <section class="main">
        <input class="toggle-all" type="checkbox">
        <label for="toggle-all">Mark all as complete</label>
        <ul class="todo-list">
          <li ng-repeat="(key,todo) in todos">
            <div class="view">
              <input type="checkbox" class="toggle" ng-click="done(key)" >
              <label>{{todo.text}}</label>
              <button class="destroy" ng-click="delete(todos,key)" ></button>
            </div>
            <input class="edit" value="Create a TodoMVC template">
          </li>
          <li><h5>已完成</h5></li>
          <li class="completed" ng-repeat="todo in doneTodos">
            <div class="view">
              <input class="toggle" type="checkbox" ng-checked="todo.flag" >
              <label>{{todo.text}}</label>
              <button class="destroy" ng-click="delete(doneTodos,key)"></button>
            </div>
            <input class="edit" value="Rule the web">
          </li>
        </ul>
      </section>
      <footer class="footer">
        <span class="todo-count"><strong></strong> {{todos.length}} item left</span>
        <button class="clear-completed">Clear completed</button>
      </footer>
    </section>
    <footer class="info">
      <p>Double-click to edit a todo</p>
      <p>Template by <a href="http://sindresorhus.com">Sindre Sorhus</a></p>
      <p>Created by <a href="http://todomvc.com">you</a></p>
      <p>Part of <a href="http://todomvc.com">TodoMVC</a></p>
    </footer>
  </body>
  <script src="../../js/angular.min.js"></script>
  <script>
    angular.module('Todos',[]).controller('TodoController',['$scope',function($scope){
      // 定义一个数组存储用户输入的数据
      $scope.todos = [];
      $scope.doneTodos = [];
      $scope.add = function(){
        $scope.todos.push({text:$scope.text,flag:false});
        $scope.text = '';
      }
      $scope.done = function(key){
      var todo = $scope.todos.splice(key,1)[0];
      todo.flag = true;
      $scope.doneTodos.push(todo);
      // console.log($scope.todos.splice(key,1));
      }
      $scope.delete = function(todos,key){
        todos.splice(key,1);
      }
    }]);
  </script>
</html> 

以上所述是小编给大家介绍的AngularJS tab栏实现和mvc小案例实例详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!

(0)

相关推荐

  • AngularJS入门教程之学习环境搭建

    学习AngularJS的一个好方法是逐步完成本教程,它将引导您构建一个完整的AngularJS web应用程序. 该web应用是一个Android设备清单的目录列表,您可以筛选列表以便查看您感兴趣的设备,然后查看设备的详细信息. 本教程将向您展示AngularJS怎样使得web应用更智能更灵活,而且不需要各种扩展程序或插件. 通过本教程的学习,您将: 1.阅读示例学习怎样使用AngularJS的客户端数据绑定和依赖注入功能来建立可立即响应用户操作的动态数据视图. 2.学习如何使用AngularJ

  • Angularjs+bootstrap+table多选(全选)支持单击行选中实现编辑、删除功能

    最终实现效果: index.html <!DOCTYPE html> <html> <head> <script src="//ajax.googleapis.com/ajax/libs/angularjs/1.5.8/angular.js"></script> <script src="//ajax.googleapis.com/ajax/libs/angularjs/1.5.8/angular-animat

  • 用AngularJS的指令实现tabs切换效果

    先来看看效果图 首先先来说一下指令嵌套,指令嵌套顾名思义就是两个以上的指令嵌套在一起,比如下面这样: <A-deirective> <B-directive></B-directive> <C-directive></C-directive> </A-directive> 下面这个tabs功能的指令,刚好用到了这个,可以让代码更加简洁. <!DOCTYPE html> <html lang="en"

  • AngularJS实现tab选项卡的方法详解

    本文实例讲述了AngularJS实现tab选项卡的方法.分享给大家供大家参考,具体如下: 一.代码实现 <!DOCTYPE html> <html ng-app='app'> <head> <meta charset="UTF-8"> <title></title> <style> *{ list-style: none; margin: 0; padding: 0; } .TabNav{ height

  • AngularJS实现表单验证

    虽然我不是前端程序员,但明白前端做好验证是多么重要. 因为这样后端就可以多喘口气了,而且相比后端什么的果然还是前端可以提高用户的幸福感. AngularJS提供了很方便的表单验证功能,在此记录一番. 首先从下面这段代码开始 复制代码 代码如下: <form ng-app="myApp" ng-controller="validationController" name="mainForm" novalidate>     <p&

  • angularJs中datatable实现代码

    本文介绍了angularJs中datatable实现,有需要的小伙伴可以参考下 html引用derective: 复制代码 代码如下: <table datatable dtOptions="dtOptionsExample2" class="table table-striped m-b-none"></table> controller设置: $scope.dtOptions = { "bProcessing": tr

  • AngularJS中的指令全面解析(必看)

    说到AngularJS,我们首先想到的大概也就是双向数据绑定和指令系统了,这两者也是AngularJS中最为吸引人的地方.双向数据绑定呢,感觉没什么好说的,那么今天我们就来简单的讨论下AngularJS这个框架的指令系统,本人也是初学,查阅了一些资料,要是有一些说的不好的地方,万望指出. 指令作为AngularJS中最为重要的部分,所以这个框架本身也是自带了比较多的的指令,但是在开发中,这些指令通常不能满足我们的需要,所以我们也是需要自定义一些指令的.那么一个AngularJS指令在HTML代码

  • angularjs表格ng-table使用备忘录

    项目中用到angularjs的表格ng-table,功能相当强大,像搜索.排序.checkbox.分页.每页表格显示数目等都有.API,demo什么的也只能参考官网了.这里做个备忘,哪天肯定还会用到. HTML: <!DOCTYPE html> <html> <meta charset="utf-8"/> <head> <script data-require="angular.js@*" data-semver

  • Angularjs实现mvvm式的选项卡示例代码

    在实现Angularjs实现mvvm式的选项卡之前,先搬出我们常用的jquery实现. 1.jquery实现简单粗暴的选项卡效果 var nav = $(".tabs");//tab切换 var box = $(".box");//容器 nav.on("click", function(){ //点击事件 var this_index=$(this).index(); $(this).addClass("active").si

  • AngularJS中的模块详解

    在讲angularjs的模块之前,我们先介绍一下angular的一些知识点: AngularJS是纯客户端技术,完全用Javascript编写的.它使用的是网页开发的常规技术(HTML,CSS,Javascript),目的是让网页应用开发更快更容易. AngularJS简化应用开发的一个重要方法是,将一个些通用的低级开发操作包装起来提供给开发者.AngularJS会自动处理好这些低级操作.它们包括: 1.DOM操作 2.设置事件的监听 3.输入验证,因为AngularJS会处理大部分这些操作,所

  • AngularJS ng-table插件设置排序

    基础概念 ng-table提供了一个表头来提供,基础的过滤信息: (1)指定一列的过滤器,然后模板就会使用. (2)ngTable支持number, text, select 和 select-multiple的值模板. (3)可以有选择的为NgTableParams提供初始过滤值. <div class="row"> <div class="col-md-6" ng-controller="demoController as demo&

  • 对比分析Django的Q查询及AngularJS的Datatables分页插件

    使用Q查询,首先要导入Q模块: from django.db.models import Q 可以组合使用&,|操作符用于多个Q的对象,产生一个新的Q对象,Q对象也可以用~操作符放在前面表示否定,如下例所示: if search: keywords_list = search.split(' ') query_list = [Q(status__icontains=get_success_fail_status(keyword)) if get_success_fail_keyword_stat

随机推荐