VICTORCHENEY

INNERPEACE

AngularJS执行流程详解

一、启动阶段

大家应该都知道,当浏览器加载一个HTML页面时,它会将HMTL页面先解析成DOM树,然后逐个加载DOM树中的每一个元素节点。我们可以把AngularJS当做一个类似jQuery的js库,我们通过<script>标签引入到HTML中,那么此时Angular就做为一个普通的DOM节点等待浏览器解析,当浏览器解析到这个节点时,发现它是一个js文件,那么浏览器会停止解析剩余的DOM节点,开始执行这个js(即angular.js),同时Angular会设置一个事件监听器来监听浏览器的DOMContentLoaded事件。当Angular监听到这个事件时,就会启动Angular应用。…

angularjs问题总结

1.动态添加html代码 中的ng指令问题

调用$compile重新编译这部分代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
app.directive("showtip",['$compile',function($compile){
return {
restrict : "A",
scope: false,
replace: true,
link : function(scope,element,attrs){
// element.on("click",function ($event) {
// scope.showTip = true;
// $event.stopPropagation();
// });
setInterval(function(){
scope.$apply();
}, 0);
var el=$compile(element.contents())(scope);
// elem.contents().remove();
element.append(el);
}
}
}]);


JavaScript--常用正则

常用正则表达式

匹配中文字符的正则表达式:[u4e00-u9fa5]
评注:匹配中文还真是个头疼的事,有了这个表达式就好办了

匹配双字节字符(包括汉字在内):[^x00-xff]
评注:可以用来计算字符串的长度(一个双字节字符长度计2,ASCII字符计1)

匹配空白行的正则表达式:ns*r
评注:可以用来删除空白行

匹配HTML标记的正则表达式:<(S*?)[^>]*>.*?|<.*?/>
评注:网上流传的版本太糟糕,上面这个也仅仅能匹配部分,对于复杂的嵌套标记依旧无能为力