angular.js:11706 Error: [$rootScope:inprog] $digest already in progress
http://errors.angularjs.org/1.3.20/$rootScope/inprog?p0=%24digest
at angular.js:63
at beginPhase (angular.js:14924)
at Scope.$apply (angular.js:14668)
at HTMLDocument.<anonymous> (multiselect.js:162)
at HTMLDocument.dispatch (jquery.js:5206)
at HTMLDocument.elemData.handle (jquery.js:5014)
at repayQueryListCtr.js:135
at angular.js:9433
at processQueue (angular.js:13318)
at angular.js:13334

我这里报错是因为multiselect.js里有一段代码:

$document.on('click', function (e) {
var target = e.target.parentElement;
var parentFound = false;

while (angular.isDefined(target) && target !== null && !parentFound) {
if (_.contains(target.className.split(' '), 'multiselect-parent') && !parentFound) {
if(target === $dropdownTrigger) {
parentFound = true;
}
}
target = target.parentElement;
}

if (!parentFound) {
$scope.$apply(function () {
$scope.open = false;
});
}
});

为所有的文档节点都加了click事件,会调用$apply方法。
需要在自己的事件中调用event.stopPropagation();   event.stopPropagation() 方法阻止事件冒泡到父元素,阻止任何父事件处理程序被执行。

a.addEventListener("click", function() {
  event.stopPropagation();
}, false);

angular $digest already in progress的更多相关文章

  1. Error: [$rootScope:inprog] $digest already in progress

    我在 做一个 服务器分配成功以后需要更新 整个页面,我的思路是 更新成功以后,就手动的 触发一下 搜索按钮,但是在触发后,虽然成功刷新了页面,但是出现了一个 错误提示, Error: [$rootSc ...

  2. AngularJS中如何使用trigger报错$digest already in progress

    今天在使用trigger事件碰到问题: 例如我有两个按钮,button1和button2,在button2绑定了ng-click事件,现在想点击button1从而触发button2的ng-click事 ...

  3. $digest already in progress

    最近在写项目时经常遇到一个小问题,在上下文外改变视图,通常来说我们需要apply()便可以实现,问题是加了apply()后控制台报错:$digest already in progress:随后我把a ...

  4. angularJS中$digest already in progress报错解决方法

    看到一个前端群里有人问,就查了下解决"$digest already in progress"最好的方式,就是不要使用$scope.$apply()或者$scope.$digest ...

  5. $digest already in progress 解决办法——续

    什么时候手动调用$apply()方法? 如果AngularJS总是将我们的代码wrap到一个function中并传入$apply(),以此来开始一轮$digest循环,那么什么时候才需要我们手动地调用 ...

  6. $digest already in progress 解决办法

    Solution In short, instead of doing this: ... your controller code... $http.get('some/url', function ...

  7. [转]AngularJS: 使用Scope时的6个陷阱

    在使用AngularJS中的scope时,会有6个主要陷阱.如果你理解AngularJS背后的概念的话,这6个点其实非常的简单.但是在具体讲述这6个陷阱之前我们先要讲两个其它的概念. 概念1: 双向数 ...

  8. 多个 ng-app 中 Controllers & Services 之间的通信

    原文发布在个人独立博客上,链接:http://pengisgood.github.io/2016/01/31/communication-between-multiple-angular-apps/ ...

  9. Angularjs的$apply及其优化使用

    今天,我们要聊得是Angularjs中的小明星$apply.当我们数据更新了,但是view层却没反应时,总能听到有人说,用apply吧,然后,懵懂无知的我们,在赋值代码后面加了$scope.$appl ...

随机推荐

  1. [转] history.back()和history.go()的区别

    Javascript:history.go()和history.back()的用法和区别 go(-1): 返回上一页,原页面表单中的内容会丢失:history.go(-1):后退+刷新:history ...

  2. (转载)Memcached和Redis简介

    转载自: Memcached和Redis简介 博主的Redis资料列表.http://www.cnblogs.com/programlearning/category/1003158.html 前言: ...

  3. jquery中关于对象类型的判断原理

    class2type[ core_toString.call(obj) ] jquery中关于对象类型的判断原理 jquery源码中关于类型判断的工具函数为type,调用方法为$.type()或者jQ ...

  4. 3897: Power

    题解: 首先很贪心的选择 有最大的我们一定会用最大的 然后可以将序列分割.. 就变成了一道模拟题了.. 每个状态记录(h,t,h-have,t-need) 注意一下细节就可以了 代码: #includ ...

  5. BeautifulSoup下Unicode乱码解决

    今天在用scrapy爬某个网站的数据,其中DOM解析我用的是BeautifulSoup,速度上没有XPath来得快,不过因为用了习惯了,所以一直用的bs,版本是bs4 不过在爬取过程中遇到了一些问题, ...

  6. [转]启动tensorboard

    https://vivekcek.wordpress.com/tag/tensorboard-windows/   Visualise Computational Graphs with Tensor ...

  7. Ubuntu16.04中nginx除80之外其他端口不能访问

    不废话, 大多数都以为是ufw防火墙的问题. 但我的是因iptables防火墙, 坑死我了. 查了好多也没查到怎么在Ubuntu关闭iptables, 索性直接卸载 apt-get remove ip ...

  8. AtCoder Regular Contest 099 (ARC099) E - Independence 二分图

    原文链接https://www.cnblogs.com/zhouzhendong/p/9224878.html 题目传送门 - ARC099 E - Independence 题意 给定一个有 $n$ ...

  9. 047 SparkSQL自定义UDF函数

    一:程序部分 1.需求 Double数据类型格式化,可以给定小数点位数 2.程序 package com.scala.it import org.apache.spark.{SparkConf, Sp ...

  10. day30 网络编程 之进程,线程,协程

    进程点进去 线程点进去 协程点进去 什么是进程 进程(有时称为重量级进程)是一个执行中的程序.每个进程都拥有自己的地址空间.内存.数据栈以及其他用于跟踪执行的辅助数据.同一个程序执行两次,属于是两个不 ...