随笔分类 - 前端:JavaScript
摘要:说明:本文只提供快速入门内容,方便快速进入实战状态。更高级的配置,请参考官网文档。 当初之所以使用 RequireJS 等工具,是因为想提高js的加载速度,避免不必要的堵塞。但通过一段时间的使用,发现 RequireJS 更重要的作用是作为命名空间使用。 一、基本用法 RequireJS 官网文章不
阅读全文
摘要:闭包(closure)是Javascript语言的一个难点,也是它的特色,很多高级应用都要依靠闭包实现。一、变量的作用域要理解闭包,首先必须理解Javascript特殊的变量作用域。变量的作用域无非就是两种:全局变量和局部变量。Javascript语言的特殊之处,就在于函数内部可以直接读取全局变量。...
阅读全文
摘要:闭包(closure)是Javascript语言的一个难点,也是它的特色,很多高级应用都要依靠闭包实现。一、变量的作用域要理解闭包,首先必须理解Javascript特殊的变量作用域。变量的作用域无非就是两种:全局变量和局部变量。Javascript语言的特殊之处,就在于函数内部可以直接读取全局变量。Js代码 var n=999; function f1(){ alert(n); } f1();// 999另一方面,在函数外部自然无法读取函数内的局部变量。Js代码 function f1(){ var n=999; } alert(n);// error这里有一个地方需...
阅读全文
摘要:冒泡事件就是点击子节点,会向上触发父节点,祖先节点的点击事件。下面是html代码部分: 外层div元素 内层span元素 外层div元素对应的jQuery代码如下:当点击span时,会触发div与body的点击事件。点击div时会触发body的点击事件。如何防止这种冒泡事件发生呢?修改如下:event.stopPropagation();//阻止事件冒泡有时候点击提交按钮会有一些默认事件。比如跳转到别的界面。但是如果没有通过验证的话,就不应该跳转。这时候可以通过设置event.preventDefault(); //阻止默认行为 ( 表单提交 )。下面是案例:html部分:用...
阅读全文
摘要:js跨域我用的比较多的就是jsonp和程序代理。但是jsonp只能用get,而且是js异步调用,有时候不能满足项目要求。下面的代码块是js调用一般处理程序的代理来实现js跨域的。如果js需要多次跨域,推荐下面的方法。publicstringGetInfo(HttpContextcontext){stringpost="a=XX&b=XX";returnCreateHttpRequest("https://www.XXXX.com",post,"POST");}#region构造请求///<summary>///构造
阅读全文
摘要:javascript跨域有两种情况:1、基于同一父域的子域之间,如:a.c.com和b.c.com2、基于不同的父域之间,如:www.a.com和www.b.com3、端口的不同,如:www.a.com:8080和www.a.com:80884、协议不同,如:http://www.a.com和https://www.a.com对于情况3和4,需要通过后台proxy来解决,具体方式如下:a、在发起方的域下创建proxy程序b、发起方的js调用本域下的proxy程序c、proxy将请求发送给接收方并获取相应数据d、proxy将获得的数据返回给发起方的js发起方页面代码如下:<form id=
阅读全文
摘要:1.document.formName.item("itemName") 问题说明:IE下,可以使用document.formName.item("itemName")或document.formName.elements["elementName"];Firefox下,只能使用document.formName.elements["elementName"].解决方法:统一使用document.formName.elements["elementName"].2.集合类对象问题说明:IE下,可
阅读全文
摘要:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=gb23
阅读全文
摘要:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">无标题文档<input id="btn" onclick="show();" type="button" value="Show" /><div id="tip" style="
阅读全文
摘要:[代码]functiongetInternalText(target){varelementChildren=target.childNodes;varinternalText="";for(vari=0;i<elementChildren.length;i++){if(elementChildren[i].nodeType==3){if(!/^\s*$/.test(elementChild...
阅读全文
摘要:简洁写法对象的简写在过去,如果你想创建一个对象,你需要这样:[代码]下面的写法能够达到同样的效果:[代码]这样就简单多了,你不需要反复使用这个对象的名称。这样 car 就定义好了,也许你会遇到 invalidUserInSession 的问题,这只有你在使用IE时会碰到,只要记住一点,不要右大括号前面写分号,你就不会有麻烦。数组的简写传统的定义数组的方法是这样:[代码]简写版是这样:[代码]对于数...
阅读全文
摘要:[代码]下面是利用正则来实现的,推荐使用。[代码]
阅读全文
摘要:点击按钮,在弹出的jQuery.dialog中,显示异步返回的数据。 WebService可以写复杂的函数,ashx可以根据传过来的参数调用不同的方法,达到同样的效果。本文用到了博客园TerryFeng的例子。Html,JS代码:代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHigh...
阅读全文
摘要:先贴出示意图:导航放在模板页里面,选择上面的页面的时候当前页面的导航背景显示为蓝色.模板页内容: CSSCSSCode highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--这是样式表文件<styletype="text/css">#nav{height...
阅读全文
摘要:[代码][代码]
阅读全文
摘要:之前的项目有个发送站内短信的功能,今天闲来无事,就修改了一下程序,用jquery+ashx来实现一下,无刷新发送留言,欢迎大家拍砖。1.验证码实现:代码 Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--<%@WebHandlerLanguage=...
阅读全文
摘要:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head></head>...
阅读全文
摘要:var arr1 = [ "one", "two", "three", "four", "five" ]; $.each(arr1, function(){ alert(this); }); 输出:one two three four five var arr2 = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] $.each(arr2, function(i, item){...
阅读全文
摘要:ECMAScript中的函数不能重载.但可以用相同的名字在一个作用域中定义两个函数而不会引发错误,但真正使用的是最后一个函数.[代码]该段代码显示20,因为第二个函数的定义覆盖了第一个定义.但是我们可以使用arguments对象避开这种限制.代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.Co...
阅读全文