在程序中代码是一行一行执行的,html标签都是由渲染引擎来执行,代码执行时从上往下一行一行执行,当执行到alert(如下图),alert会阻塞后面代码的执行,当点击完确定之后,代码继续往下执行。 javascript的内容同样可在外部进行引用,如下图所示,正常情况下执行结果和上面的内容相同,但当我们 ...
分类:
其他好文 时间:
2016-09-02 22:00:48
阅读次数:
135
1、$q $q是Angular的一种内置服务,它可以使你异步地执行函数,并且当函数执行完成时它允许你使用函数的返回值(或异常)。 2、defer defer的字面意思是延迟, $q.defer() 可以创建一个deferred实例(延迟对象实例)。 deferred 实例旨在暴露派生的Promise ...
分类:
Web程序 时间:
2016-08-31 00:43:32
阅读次数:
195
延迟脚本 defer: 一般而言,js的引入<script></script>被放在body的结束符之前,这主要是为了让页面的所有节点被加载完了之后在执行js代码,防止js获取dom节点失败的情况出现。 如果你一定要将<script></script>放在head中,又担心无法获取到dom节点的话, ...
分类:
Web程序 时间:
2016-08-27 16:43:17
阅读次数:
204
promise 是一种用异步方式处理值的方法,promise是对象,代表了一个函数最终可能的返回值或抛出的异常。在与远程对象打交道非常有用,可以把它们看成一个远程对象的代理。 要在Angular中创建promise需要使用内置的$q服务。先用factory定义一个服务,注入$q服务。 获得defer ...
分类:
Web程序 时间:
2016-08-26 18:19:22
阅读次数:
231
使用JQuery对多个ajax请求串行执行。 HTML代码: JS: 方法类似于Node.js中的q,使用promise defer模式将所有的ajax请求放到一个数组里,然后通过$.when.apply().done()将所有ajax请求依次执行。 ...
分类:
Web程序 时间:
2016-08-22 10:46:48
阅读次数:
177
一、使用<script>元素 1、<script>元素定义了6个属性: async:可选。表示应该立即下载脚本,但不应该妨碍页面中的其他操作,比如下载其他资源或等待加载其他脚本。只对外部脚本文件有效。 charset:可选。表示通过src属性指定的代码的字符集。很少人用。 defer:可选。表示脚本 ...
分类:
编程语言 时间:
2016-08-18 14:26:07
阅读次数:
235
<script defer="defer">alert("页面加载完我才执行的")</script>先看到这段话 然后再执行上面的 JS 如果去掉上面的 defer="defer" 那么会先执行JS 在看到这段话 ...
分类:
其他好文 时间:
2016-08-14 13:05:44
阅读次数:
109
网上说法很多,很少一句话能总结清楚的,终于找到两句一针见血的描述,很到位: 相同点:都不阻塞DOM解析 defer :顺序:保证先后顺序。解析:HTML 解析器遇到它们时,不阻塞(脚本将被异步下载),待文档解析完成之后,执行脚本。 async :顺序:不保证先后顺序。解析:HTML 解析器遇到它们时 ...
分类:
Web程序 时间:
2016-08-13 01:10:46
阅读次数:
184
第二章 1 <script type="text/javascript" async defer src=""></script> defer:延迟脚本到文档完全被解析和显示之后再执行,但立即下载,最好只包含一个 。async :表示应该立即下载脚本,但不应妨碍页面中的其他操作,并不保证按照指定它们 ...
分类:
编程语言 时间:
2016-08-12 11:50:05
阅读次数:
156
这篇文章来源于JS高级程序设计第三版中关于script标签的介绍,结合查阅的资料写下的学习笔记。 向html页面中插入javascript代码的主要方法就是通过script标签。其中包括两种形式,第一种直接在script标签之间插入js代码,第二种即是通过src属性引入外部js文件。由于解释器在解析 ...
分类:
其他好文 时间:
2016-08-12 11:43:17
阅读次数:
101