对大部分的JavaScript开发者而言,async函数是个新鲜事物,它的发展经历了一个漫长的旅程。因此本文试图梳理总结JavaScript异步函数的发展历程:在不久之前,我们还只能写回调函数来实现异步,然后Promise/A+标准出来了,这之后又出现了生成器函数,而未来显然是async函数的。现在让我们一起来回顾这些年来JavaScript异步函数的发展历程吧。回调函数Callbacks似乎一切应该从回调函数开始谈起。异步JavaScript正如我们所知道的那样,...
在JavaScript中,创建数组可以使用Array构造函数,或者使用数组直接量[],后者是首选方法。Array对象继承自Object.prototype,对数组执行typeof操作符返回object而不是array。然而,[] instanceof Array也返回true。也就是说,类数组对象的实现更复杂,例如strings对象、arguments对象,arguments对象不是Array的实例,但有length属性,并能通过索引取值,所以能像数组一样进行循环操作。在本文中,我将复习一些数组原型的方法,并探...
前端工程师有时候面试时会遇到一类面试官,他们问的问题对于语言本身非常较真儿,往往不是候选人可能期待的面向实际的问题(有些候选人强调能干活就行,至于知不知道其中缘由是无关痛痒的)。这类题目,虽然没有逻辑,但某种程度说,确实考察了候选人对于javascript这门语言的理解。突然想到这个话题是无聊在翻自己的Github,看看以前都写过什么丑货。然后翻到了这篇解释Javascript quiz的文章quiz-legend,反正没事儿,就想搬过来供...
本文介绍了JavaScript实现图片轮播组件,废话不多说了直接看下面:效果:自动循环播放图片,下方有按钮可以切换到对应图片。添加一个动画来实现图片切换。鼠标停在图片上时,轮播停止,出现左右两个箭头,点击可以切换图片。鼠标移开图片区域时,从当前位置继续轮播。提供一个接口,可以设置轮播方向,是否循环,间隔时间。对HTML、CSS的要求:<div class="carousel-box"><div class="carousel"><ul class="clearfix" ><li><img sr...
假设一个网页里有多个表单,其中一个表单里有文件上传,[html] <form action=http://xxx.com/data method=post> <input type="text" name="data" /> <input type="submit" name="Submit2" value="上传数据"> </form> <form action=... ... > ... </form> ... <form action=... ... > ... </form> <form action=http://xxx.com/upload enctype=multipart/form-data method=post> <input type="file" name=...
代码如下: attachEvent("onblur", blur); function blur() { document.all.form.username.attachEvent("onblur", blur); if(event.srcElement == document.all.form.username){ alert("efewef"); } } 其执行顺序为: 先执行alert("hello"); 后执行alert("efewef");JavaScript教程/参考手册 JavaScript热搜 vue2.0 移动端实现下拉刷新和上拉加载更多的示例解决vue-router中的query动态传参问题解决使用vue.js路由...
假设我们这里有1到5五张bmp图片,那么控制图片切换显示的核心代码可以为:var i=1;var img = new Array();img[0] = "1.bmp";img[1] = "2.bmp";img[2] = "3.bmp";img[3] = "4.bmp";img[4] = "5.bmp";function playImg(){i=i+1;var imgs = document.getElementById("img");imgs.src =img[i];if(i>=4){i=1;}}window.onload = function(){document.getElementById("img").src="1.bmp";}主要体现了一个图片的切换控制思路,可以用于各种...
用惯了jquery的同学,相信都很欣赏其动画引擎。确实相对比较完善!如果,如果想像力足够丰富的话,相信可以做出超出想像的效果。当然,跟2d库比起来,还是相差相当一段距离。jquery压根也不是专门为动画而设计的。模拟真实世界方面,还是不足的。但在web世界里还是游刃有余的。动画其实一直是flash的专属领地(web区哉)。只是它常常沦为黑客攻击的漏洞所在,而且要装插件,有时候文件实在太大,而且性耗实在是高啊。html5出现后,其实...
今天有做了几个asp.net结合Javascript的教程文章。现回顾头来看看那些Javascript脚本,有写得不太理想,过于复杂。现抽取出来,重构它们。 之前一: 代码如下: function SelectedAll(cb) { cb.checked = cb.checked ? false : true; var gv = document.getElementById(); var rc = gv.rows.length; for (var i = 1; i < rc; i++) { var input = gv.rows[i].cells[0].getElementsByTagName("input"); if (input[0].type == "checkb...
我们针对常用的jQuery方法以及其等价原生方法的性能做了一些测试(1, 2, 3)。 我知道你在想什么。原生方法明显要比jQuery方法快,因为jQuery方法要处理浏览器兼容以及其他一些事情。是的,我完全赞成。写这篇文章并不是出于反对使用jQuery,但如果你针对的是现代浏览器,那么使用原生方法会使性能有很大的提升。许多开发者没有意识到大多数他们使用的jQuery方法可以使用原生方法,或者更轻量级的方法来代替。下面是一些代码示例,展...
其实jquery按回车提交数据是很简单的事情,我们只要检查测到用户按了回车就直接绑定事件.click就实现了提交了,在按钮上我们绑定ajax提交表单事件即可。核心代码 代码如下:$(document).ready(function(){ $("按下回车的控件").keydown(function(e){ var curKey = e.which; if(curKey == 13){ $("#回车事件按钮控件").click(); return false; } }); }); 是用js的ajax功能同时支持回车事件 代码如下:document.onkeydown = function ...
使用css控制页面有4种方式,分别为行内样式(内联样式)、内嵌式、链接式、导入式。 行内样式(内联样式)即写在html标签中的style属性中,如 内嵌样式即写在style标签中,例如div{width:100px; height:100px} 链接式即为用link标签引入css文件,例如 导入式即为用import引入css文件,例如@import url("test.css")如果想用javascript获取一个元素的样式信息,首先想到的应该是元素的style属性。但是元素的style属性仅仅代表了元素的内联...
读取本地Excel文件内容的Javascript代码: 代码如下:function read_excel(){var filePath="D:\abcd9.com.xls"; //要读取的xls var sheet_id=2; //读取第2个表 var row_start=3; //从第3行开始读取 var tempStr=''; try{ var oXL = new ActiveXObject("Excel.application"); //创建Excel.Application对象 }catch(err) { alert(err); } var oWB = oXL.Workbooks.open(filePath); oWB.works...
网页右侧悬浮滚动QQ在线客服代码代码如下:function myEvent(obj,ev,fn){ if (obj.attachEvent){ obj.attachEvent(on+ev,fn); }else{ obj.addEventListener(ev,fn,false); };};function getbyClass(id,sClass){ var oParent = document.getElementById(id); var all = oParent.getElementsByTagName(*); var array = []; for (var i=0; i if (all[i].className == sClass){ array.push(all[i]); }; }; return array;};functio...
最近在写项目的framework,写个JQueryMessageBox的类,以使用jquery ui中的dialog()来显示消息框,为了使方法方便调用,便加入了自动判断页面是否加入了ui.js和ui.css,代码如下://如果没有包含ui.js,则引用 if ($('script[src$=""jquery-ui-1.8.11.custom.min.js""]').length == 0) {{ $("""").appendTo('head'); }} //如果没有加载css,则加载 if ($('link[ref$=""jquery-ui-1.8.14.custom.css""]').length == 0) {{ $('')....