JavaScript
rainbow702
写些什么呢。。。
展开
-
点出 退出 按钮,防止点击浏览的 后退 按钮仍然可以进系统的解决方案
项目使用的struts2 框架,登陆完了之后,在浏览器的地址栏里显示的一直是:http://IP:PORT/app-name/user!login这样导致,当点击画面上的退出按钮通过form提交了 "user!logout"的请求后,还是可以打开系统首页,并且能够继续操作(因为 "user!login" 请求在画面回退的时候被重新发送了)所以,在网上了查了一下,可以通过以下的方式来避免原创 2016-01-14 18:20:49 · 1554 阅读 · 0 评论 -
javascript 中 apply 方法的使用
在看 backbone 的 todos 例子时,有一行代码,如下: this.without.apply(this, this.done()); 一开始怎么也不理解这句话的含义。后来看了一些网上的解释,还是半懂不懂的。今天再次看到它的时候,把JAVA里的反射跟它联系了一下,感觉有点像,然后,再回过头去看看网上的那些解释,感觉有点懂了。如果把上面一句写成下面这个样子的话,可能更好...原创 2012-08-17 16:49:52 · 121 阅读 · 0 评论 -
Backbone 学习笔记
1. 在 backbone 的 set 方法的源码中,有如下一段代码: // Handle both `"key", value` and `{key: value}` -style arguments. if (_.isObject(key) || key == null) { attrs = key; options = valu...原创 2012-08-22 14:22:05 · 157 阅读 · 0 评论 -
JavaScript 中 的等号(==)/不等号(!=) 和全等号(===)/非全等号(!==) 的用法
之前使用JavaScript的时候,时不时的会遇到使用 == 和 === 这两个符号来判断两个变量是否相等。但是对于这两个符号的差别一直没有去调查。今天又遇到了 === 这个符号,所以决定去查一下,究竟这两者有什么区别。JS帮助文档我一直用的是W3School版本的,所以,直接去找了一下相关说明,还挺详细的。见下图。关于对象的比较,我写了一个实例,如下图:...原创 2012-08-23 09:05:04 · 1294 阅读 · 0 评论 -
JavaScript中类型判断
在JS中,对类型的判断,有些时候是必须的。之前一直用的是typeof这个关键字来的,后来发现,使用这个关键字是不行的,因为它对数组等对象判断出来的类型是 Object 而不是Array。所以,建议大家使用下面的方式来判断:var a = 123; var b = "123"; var c = []; var d = {}; var e = function(){}; ...原创 2013-05-15 21:23:14 · 87 阅读 · 0 评论 -
Backbone.js 的最佳应用场景有哪些?
原文地址:http://www.zhihu.com/question/19720745原创 2012-08-24 15:27:04 · 91 阅读 · 0 评论 -
Javascript中, setTimeout() 和 setInterval() 的方法
1. setTimeout() 方法用于在指定的毫秒数后调用函数或计算表达式,其语法为:setTimeout(code,millisec) setTimeout() 只执行 code 一次。如果要多次调用,请使用 setInterval() 或者让 code 自身再次调用 setTimeout()。返回值为: 一个可以传递给 Window.clearTimeout() 从而...原创 2012-08-31 15:26:09 · 132 阅读 · 0 评论 -
Javascript中, event 的 target 与 currentTarget 的区别
target在事件流的目标阶段;currentTarget在事件流的捕获,目标及冒泡阶段。只有当事件流处在目标阶段的时候,两个的指向才是一样的, 而当处于捕获和冒泡阶段的时候,target指向被单击的对象而currentTarget指向当前事件活动的对象(一般为父级)。<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitiona...原创 2012-08-31 15:41:19 · 115 阅读 · 0 评论 -
【JavaScript语言精粹系列】apply的用法
之前写过一个apply的用法的博客:http://rainbow702.iteye.com/admin/blogs/1635299但在读了JavaScript语言精粹中的介绍之后,发现之前的理解还不是很好,所以,今天重写一个实例来说明一下。先说明一下apply函数的声明:apply(context, args); 其中, context 表示要绑定给方法的this的值,args表示...原创 2012-12-31 12:40:20 · 176 阅读 · 0 评论 -
网页常用的各种尺寸
//各种尺寸 s += "\r\n网页可见区域宽:"+ document.body.clientWidth; s += "\r\n网页可见区域高:"+ document.body.clientHeight; s += "\r\n网页可见区域高:"+ document.body.offsetWidth +" (包括边线的宽)"; s += "\r\n网页...原创 2012-09-16 18:56:30 · 116 阅读 · 0 评论 -
正则表达式,分组匹配示例
假设有如下几行文本:"xxx" : {"name" : "123"}"yyy" : {"name" : "456"}"zzz" : {"name" : "789"} 如果匹配出第1条和第3条,那么可以使用以下的正则表达式:"((xxx)|(zzz))".* 其中,最外层的括号是不能省原创 2013-09-22 11:16:15 · 293 阅读 · 0 评论 -
JSON.stringify 的注意点
通过 JSON.parse 把一个object对象转换成JSON格式的字符串,大家可能都做过。但是不知道大家有没有注意下面这个情况:var obj = {"name" : "xiao wang", "salary" : undefined};var str = JSON.stringify(obj);alert(str); 大家觉得,alert出来的字符串是什么呢? 会不...原创 2013-09-23 21:10:30 · 1064 阅读 · 0 评论 -
模态对话框导致setTimeout失效的解决方案(一)
web开发中,大家有可能经历过下面这种问题: ① 画面上通过setTimeout启动了一个定时器,用以动态更新画面上的某个组件(比如,1 秒刷新一次时间中的秒数) ② 当页面弹出一个模态对话框(通过 showModalDialog打开)时候,你会发现画面上的setTimeout失效了(比如,时间不再是一秒刷新一次了) 发生这个问题的原因大家可能都知道:模态对话框的特性导致了这个问题。在关闭模态...原创 2014-04-03 00:27:08 · 682 阅读 · 0 评论 -
模态对话框导致setTimeout无效的解决方案(二)
之前的方案一,请参照:http://rainbow702.iteye.com/admin/blogs/2040051 这篇写下方案二。这个方案用到了HTML5中新的API,web worker。web worker 能够产生一个独立于主线程的子线程,它们之间除了通信之外,是不会互相干扰的。而恰好,在web worker 也能够使用 setTimeout 来定时,所以,我就自然而...2014-04-03 01:02:38 · 228 阅读 · 0 评论 -
javascript中两个感叹号的作用
最近在在看Javascript代码时,会经常看到代码中使用双感叹的用法,如 var a = !!result.flag; 开始的时候,不怎么明白为什么一定要这么做?后来想想,应该是在下文中要对a进行判断。那么,有人可能会问,即使用不用又感叹号,也能正常的判断啊。的确如此,但我想,经过双感叹号之后,a的值就变成了一个boolean值了,这样会让判断语句看上去更直观吧。 因...原创 2014-04-09 16:37:05 · 547 阅读 · 0 评论 -
将树状结构转换为下拉框,供用户进行选择
需求:① 给定一个数组② 数组中的每个元素均为树结构上的一个节点③ 除root节点外,其他每个结点,均有一个字段,用于记录直接父节点的id④ root节点以下的每个层次中,节点的数量不限树结构如下图: ⑤ 要求实现: 将上述树状图中的每个节点作成下拉框中的一个option供用户进行选择,效果图如下: 实现代码:/** * build all...原创 2015-06-22 19:47:32 · 208 阅读 · 0 评论 -
JSON的格式
There are just a few rules that you need to remember: •Objects are encapsulated within opening and closing brackets { }•An empty object can be represented by { }•Arrays are encapsulated within openi...原创 2013-04-19 11:29:21 · 103 阅读 · 0 评论 -
IPv6的正则表达式【JAVASCRIPT】
大家都知道IPv4的正则表达式很好写,如下:^((25[0-5]|2[0-4]\d|[0-1]?\d{1,2})\.){3}(25[0-5]|2[0-4]\d|[0-1]?\d{1,2})$ 但是IPv6的格式相比较而言,就复杂了不止100倍啊,下面是IPv6格式的简单介绍:Format is x:x:x:x:x:x:x:xx is a 16 bit hexadecimal fie...原创 2012-06-26 14:31:32 · 521 阅读 · 0 评论 -
将树状结构转换为下拉框,供用户进行选择
需求:① 给定一个数组② 数组中的每个元素均为树结构上的一个节点③ 除root节点外,其他每个结点,均有一个字段,用于记录直接父节点的id④ root节点以下的每个层次中,节点的数量不限树结构如下图: ⑤ 要求实现: 将上述树状图中的每个节点作成下拉框中的一个option供用户进行选择,效果图如下: 实现代码:/** * build all d原创 2016-01-14 18:07:08 · 475 阅读 · 1 评论 -
javascript中两个感叹号的作用
最近在在看Javascript代码时,会经常看到代码中使用双感叹的用法,如 var a = !!result.flag; 开始的时候,不怎么明白为什么一定要这么做?后来想想,应该是在下文中要对a进行判断。那么,有人可能会问,即使用不用又感叹号,也能正常的判断啊。的确如此,但我想,经过双感叹号之后,a的值就变成了一个boolean值了,这样会让判断语句看上去更直观吧。 因为原创 2016-01-14 16:20:42 · 1976 阅读 · 0 评论 -
模态对话框导致setTimeout无效的解决方案(二)
之前的方案一,请参照:http://rainbow702.iteye.com/admin/blogs/2040051 这篇写下方案二。这个方案用到了HTML5中新的API,web worker。web worker 能够产生一个独立于主线程的子线程,它们之间除了通信之外,是不会互相干扰的。而恰好,在web worker 也能够使用 setTimeout 来定时,所以,我就自然而然的原创 2016-01-14 16:17:58 · 643 阅读 · 0 评论 -
模态对话框导致setTimeout失效的解决方案(一)
web开发中,大家有可能经历过下面这种问题: ① 画面上通过setTimeout启动了一个定时器,用以动态更新画面上的某个组件(比如,1 秒刷新一次时间中的秒数) ② 当页面弹出一个模态对话框(通过 showModalDialog打开)时候,你会发现画面上的setTimeout失效了(比如,时间不再是一秒刷新一次了) 发生这个问题的原因大家可能都知道:模态对话框的特性导致了这个问题。在关闭模态对话原创 2016-01-14 16:15:16 · 961 阅读 · 0 评论 -
JSON.stringify 的注意点
通过 JSON.parse 把一个object对象转换成JSON格式的字符串,大家可能都做过。但是不知道大家有没有注意下面这个情况:var obj = {"name" : "xiao wang", "salary" : undefined};var str = JSON.stringify(obj);alert(str); 大家觉得,alert出来的字符串是什么呢? 会不会原创 2016-01-14 15:52:36 · 3205 阅读 · 1 评论 -
JavaScript中类型判断
在JS中,对类型的判断,有些时候是必须的。之前一直用的是typeof这个关键字来的,后来发现,使用这个关键字是不行的,因为它对数组等对象判断出来的类型是 Object 而不是Array。所以,建议大家使用下面的方式来判断:var a = 123; var b = "123"; var c = []; var d = {}; var e = function(){};原创 2016-01-14 15:38:03 · 308 阅读 · 0 评论 -
JSON的格式
There are just a few rules that you need to remember: •Objects are encapsulated within opening and closing brackets { }•An empty object can be represented by { }•Arrays are encapsulated within opening转载 2016-01-14 15:32:36 · 243 阅读 · 0 评论 -
[置顶] 【JavaScript语言精粹系列】apply的用法
之前写过一个apply的用法的博客:http://rainbow702.iteye.com/admin/blogs/1635299但在读了JavaScript语言精粹中的介绍之后,发现之前的理解还不是很好,所以,今天重写一个实例来说明一下。先说明一下apply函数的声明:apply(context, args); 其中, context 表示要绑定给方法的this的值,args表示原创 2016-01-14 19:27:07 · 605 阅读 · 0 评论 -
Ajax 以GET方式请求时,参数中包含 "#" 特殊字符的处理
Ajax 以GET方式请求时,参数中包含 “#” 特殊字符的处理Ajax 以GET方式请求时参数中包含 特殊字符的处理现象分析解决方法一方法二提示现象在使用 jquery 的ajax调用后台的接口时,如果是get方式的话,当参数中含有”#”这些等对于URI而言有着特殊含义的符号时,发现“#”字符后面的信息全被裁掉了。 比如:var url= "xxxx?name=" + "wz#aaa原创 2016-10-29 09:29:36 · 13516 阅读 · 2 评论 -
动态导入js引发的问题
比较常见的用于动态导入js的方法有以下两种://方法一 document.write("<script language=\"JavaScript\" type=\"text/javascript\" src=\"t.js\"><\/script>"); //方法二 var script = document.createElement(原创 2011-09-03 19:31:19 · 210 阅读 · 0 评论 -
window.open 关闭窗口时,不需要弹出确认框的方法
以前在老的IE中调用 window.close() 方法来关闭当前的IE窗口时,不会有确认框弹出。但在IE8(IE7 可能也是),单凭这一句代码,是无法直接关闭当前IE窗口的,因为IE会弹出一个确认窗口给用户,问用户是否有意关掉当前窗口,如果用户选择了 “是”的话,那么才将当前窗口关闭,否则保留当前窗口。那么,在IE8中,要如何直接通过JS来关闭当前IE窗口呢,方法如下:window.o...原创 2012-01-08 20:15:28 · 414 阅读 · 0 评论 -
js中的三种对话框
prompt("请输入密码","password") JS中的简单对话框一共有三种:分别用alert()、confirm()和prompt() 1. alert() :弹出对话框,向用户显示一则消息,无返回值。 如: alert("你的输入不正确,请重新输入!") 2. confirm() :弹出对话框,询问用户点击“OK”或“Can...原创 2011-11-08 22:00:47 · 182 阅读 · 0 评论 -
frame 的 parent 是谁?
一个网页结构如下图,那么,当在frame1 或者 frame2 中,通过下面这个代码来打开一个页面时,应该在何处打开呢? window.open("./test.html","_parent",""); 答案是:图中的那个 “网页” 的内容将被 "test.html" 的内容所取代,也就是说,上面代码中的“_parent” 就是图中的 “网页” ...原创 2011-11-10 13:38:01 · 354 阅读 · 0 评论 -
javascript(JS) 中的alert出来的消息怎么进行国际化
以STRUTS2、JSTL为前提 在一般的JSP页面中,我们可以使用框架提供的标签进行对出错信息的国际化,比如STRUTS2中的:<s:property value="%{getText('test.i18n.helloworld')}"/> 那么,针对JS中的alert语句,如何使得它打印出来的信息也能被国际化呢?直接的方法,我并没有找到,我只是找到了一个间接的方法,...原创 2012-06-08 16:16:42 · 737 阅读 · 0 评论 -
JSP中,防止 css js img 等文件的缓存的方法
被这个问题困扰过很多回,上网也查过很多方法,基本上就是在 <head> 标签中添加如下元素:<meta http-equiv="pragma" content="no-cache"><meta http-equiv="cache-control" content="no-cache"><meta http-equiv=&原创 2012-06-26 11:17:18 · 393 阅读 · 0 评论 -
点出 退出 按钮,防止点击浏览的 后退 按钮仍然可以进系统的解决方案
项目使用的struts2 框架,登陆完了之后,在浏览器的地址栏里显示的一直是:http://IP:PORT/app-name/user!login这样导致,当点击画面上的退出按钮通过form提交了 "user!logout"的请求后,还是可以打开系统首页,并且能够继续操作(因为 "user!login" 请求在画面回退的时候被重新发送了)所以,在网上了查了一下,可以通过以下的方式来避...原创 2015-07-09 15:39:01 · 688 阅读 · 0 评论