惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

小众软件
小众软件
C
Check Point Blog
Vercel News
Vercel News
Y
Y Combinator Blog
G
Google Developers Blog
P
Proofpoint News Feed
WordPress大学
WordPress大学
MongoDB | Blog
MongoDB | Blog
博客园 - 司徒正美
Last Week in AI
Last Week in AI
博客园 - 【当耐特】
N
Netflix TechBlog - Medium
L
LangChain Blog
V
V2EX
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
大猫的无限游戏
大猫的无限游戏
D
DataBreaches.Net
博客园_首页
B
Blog RSS Feed
The Cloudflare Blog
MyScale Blog
MyScale Blog
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Microsoft Security Blog
Microsoft Security Blog

博客园 - 卓如

AngularJs应用页面切换优化方案(转) 在IE7下使用angularjs(转) AngularJS 中的 Promise 和 设计模式(转) Installing Oracle and ArcSDE on separate servers 修改oracle内存占用 在设置窗体身份验证时设置个别页面不需要进行验证[转] 解决ASP.NET在IE10中Session丢失问题【转】 心理课堂:对付拖延症(转) Ado方式导入excel混用数据类型引起数据缺失问题解决方法 深入分析 Java 中的中文编码问题(转) 轻松实现坐标转换(转) WIN2003系统远程桌面多连接数设置终极大法 GIS理论(墨卡托投影、地理坐标系、地面分辨率、地图比例尺、Bing Maps Tile System)【转载】 两点坐标间距离的算法以及验证【转】 [转]判断一个点是否落在多边形内 wpf \silverlight 保存控件为图片 - 卓如 WPF 自定义快捷键命令(Command)(转) SelectNodes 表达式 - 卓如 - 博客园 获得excel的sheet名字
混合使用Jquery Deferred和Angularjs的$timeout(转)
卓如 · 2015-03-03 · via 博客园 - 卓如

原文链接:http://my.oschina.net/gejiawen0913/blog/174826

<!DOCTYPE html>
<html ng-app="Demo">
    <head>
        <meta charset="utf-8" />
        <title>AngularJS</title>
    </head>
    <body>
 
        <div ng-controller="TestCtrl">
            <span ng-click="go()">{{ a }}</span>
        </div>
 
        <script type="text/javascript"
        src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
        <script type="text/javascript"
        src="http://ajax.googleapis.com/ajax/libs/angularjs/1.0.3/angular.min.js"></script>
 
        <script type="text/javascript">
            var app = angular.module('Demo', [], angular.noop);
            app.controller('TestCtrl', function($scope, $timeout) {
                $scope.a = '点击我开始';
 
                var defer = $.Deferred();
                var f = function() {
                    if ($scope.a == '') {
                        $scope.a = '已停止';
                        return;
                    }
                    defer.done(function() {
                        $scope.a.length < 10 ? $scope.a += '>' : $scope.a = '>';
                        $timeout(f, 100);
                    });
                };
                defer.done(function() {
                    $scope.a = '>';
                    f();
                });
 
                $scope.go = function() {
                    defer.resolve();
                    $timeout(function() {
                        $scope.a = '';
                    }, 5000);
                };
            });
        </script>
    </body>
</html>