AngularJs练习Demo17 ngRoute
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<meta charset="utf-8" />
<script src="../Scripts/angular.min.js"></script>
<script src="../Scripts/angular-route.min.js"></script> <script src="../Scripts/angular-animate.js"></script>
<style type="text/css">
<!--animate class样式的写法,如果是ng-show的话使用的写法是不一样的 -->
.box {
width: 200px;
height: 200px;
background: red;
transition: 1s all;
} .box.ng-enter {
opacity: 0;
} .box.ng-enter-active {
opacity: 1;
} .box.ng-leave {
opacity: 1;
} .box.ng-leave-active {
opacity: 0;
}
</style> </head>
<body>
<div ng-app="myApp">
<div class="header" ng-controller="firstController"> <!-- 例子 1 超链接跳转 <a href="#div1" >第一个div</a>
<a href="#div2">第二个div</a>
<a href="#div3">第三个div</a>
<a href="#content/12">点击去内容12</a> -->
<!--例二 js跳转
通过$location来跳转
一般情况下是没办法在这里直接使用$location
因为我们在控制器的时候有给 $scope.$location 赋值所以这里才能直接使用
-->
<a ng-click="$location.path('/div1')">第一个div</a>
<a ng-click="$location.path('/div2')">第二个div</a>
<a href="#div3">第三个div</a>
<a href="#content/12">点击去内容12</a> </div>
<div ng-view class="box"> </div> <script type="text/javascript">
var app = angular.module("myApp", ['ngRoute', "ngAnimate"]);
//$routeChangeStart
//$routeChangeSuccess/Error
app.run(["$rootScope", function ($rootScope) { //可以在run方法里注册路由切换的事件
$rootScope.$on("$routeChangeStart", function (event, current, pre) { });
}]); app.config(['$routeProvider', function ($routeProvider) {
$routeProvider.when("/div1", {
templateUrl: 'template1.html', //templateUrl
controller: "div1Controller"
}).when("/div2", {
template: "<p>这是div2{{text}}</p>",
controller: "div2Controller"
}).when("/div3", {
template: "<p>这是div3{{text}}</p>",
controller: "div3Controller"
}).when("/content/:id", { //传值 名称为id
template: "<p>这是div4{{text}} id={{id}}</p>",
controller: "div4Controller"
}).otherwise({
redirectTo: "/div1"
});
}]); app.controller("div1Controller", function ($scope) {
$scope.text = "PhoneGap中文网div1Controller";
});
app.controller("div2Controller", function ($scope) {
$scope.text = "PhoneGap中文网div2Controller";
});
app.controller("div3Controller", function ($scope) {
$scope.text = "PhoneGap中文网div3Controller";
});
app.controller("div4Controller", function ($scope, $routeParams) {//通过$routeParams来获取参数
$scope.text = "PhoneGap中文网div4Controller";
$scope.id = $routeParams.id; });
app.controller("firstController", function ($scope, $location) {
$scope.$location = $location;
}); </script> </div>
</body>
</html>
AngularJs练习Demo17 ngRoute的更多相关文章
- AngularJS 路由:ng-route 与 ui-router
AngularJS的ng-route模块为控制器和视图提供了[Deep-Linking]URL. 通俗来讲,ng-route模块中的$routeService监测$location.url()的变化, ...
- angularjs之插件ngRoute和ngAnimate
使用ngRoute和ngAnimate配合使用,可以实现页面切换的效果. 如果有使用过swiper,就知道这个效果是怎么样的. 代码: <!DOCTYPE html> <html l ...
- AngularJS Best Practices: ngRoute
app/----- components/---------- users/--------------- controllers/-------------------- users.control ...
- AngularJs练习Demo16 ngRoute
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...
- [AngularJS] AngularJS系列(2) 中级篇之路由
目录 原理 angular-route ui-router 事件 深度路由 原理 ng的route本质是监听hashchange事件. 在angular-route中 $rootScope.$on(' ...
- angularjs 路由回退,返回到上一个路由
在现阶段比较流行的angularjs框架中:路由是一个比较重要的应用:angularjs的单页面是其强大功能之一: 所有的页面其实就只是在一个页面就实现的:angularjs通过对路由的控制来进行页面 ...
- AngularJS基础总结
w3shools angularjs教程 wiki <AngularJS权威教程> Introduction AngularJS is a JavaScript framewo ...
- ngRoute 和 ui.router 的使用方法和区别
在单页面应用中要把各个分散的视图给组织起来是通过路由机制来实现的.本文主要对 AngularJS 原生的 ngRoute 路由模块和第三方路由模块 ui.router 的用法进行简单介绍,并做一个对比 ...
- AngularJs轻松入门(七)多视图切换
在AngularJs应用中,我们可以將html碎片写在一个单独的文件中,然后在其他页面中將该段碎片加载进来.如果有多个碎片文件,我们还可以在控制器中根据用户的操作动态的加载不同的碎片,从而达到切换视图 ...
随机推荐
- ebay如何确定同一电脑登陆了多个账号,以及同一账号登陆过多台电脑
转自hilton 的BLOG http://jimqu.blog.51cto.com/105370/654691 一切要从ebay的买家保护说起 ebay作为一个电子商务平台,之所以可以汇聚如此众多的 ...
- javascript之闭包深入理解(一)
曾经在开始学习javascript的时候,很是不理解闭包的概念.今天想对它详细的剖析. 在说清楚闭包之前,必须先清楚作用域链. 作用域链 我们知道,执行环境是js中最为重要的一个概念.执行环境定义了变 ...
- Linux定时任务命令crontab
作为一个php码农,linux接触总是很少,但又是必须会的一项技能,今天学到的linux命令是crontab命令. 注:以下总结基于Ubuntu 12.04 去/etc目录下看看 先去Ubuntu的/ ...
- thrift的简单实现
1.使用windows实现,首先在apache官网下载一个thrift的编译工具,在项目中建一个文件叫add.thrift的文件,内容如下: namespace java com.vipshop.sa ...
- 1160 蛇形矩阵(codevs)
http://codevs.cn/problem/1160/ 题目描述 Description 小明玩一个数字游戏,取个n行n列数字矩阵(其中n为不超过100的奇数),数字的填补方法为:在矩阵中心从1 ...
- 宏定义 button 方法 --备
定义 #define BARBUTTON(TITLE, SELECTOR) [[[UIBarButtonItem alloc] initWithTitle:TITLE style:UIBarButto ...
- 50个PHOTOSHOP快捷键技能!
一.常用的热键组合 1.图层混合模式快捷键:正常(Shift + Option + N),正片叠底(Shift + Option + M),滤色(Shift + Option + S),叠加(Shif ...
- 当fixed元素相互嵌套时chrome下父元素会影响子元素的层叠关系
问题:fixed元素被另一个fixed元素包含的时候在chrome下fixed子元素的定位会受到父元素的影响. demo(http://jsbin.com/qumah/1): <!DOCTYPE ...
- Javascript OrderBy
要在js 实现orderBy基本知识就是 array.sortarray.sort(function(a,b){ a 表示 row 0 b 表示 row 1 它会loop多次你可以比较 if(a &g ...
- Delphi:窗体自适应屏幕分辨率(根据预设值的比例改变)
delphi 程序适应屏幕分辨率,先在表单单元的Interface部分定义两个常量, 表示设计时的屏幕的宽度和高度(以像素为单位). 在表单的Create事件中先判断 当前分辨率是否与设计分辨率相同, ...