日期:2014-05-16  浏览次数:20362 次

javascript开发常用的日常总结

一:location.href
1、top.location.href=”url”????????? 在顶层页面打开url(跳出框架)

2、parent.location.href=”url”  ? 在父窗口打开Url地址

3、self.location.href=”url” 和 this.location.href=”url” 和 window.location.href=“url” 和location.href   ??? 都是在本页面打开url地址

由此我解决了一个问题:就是使用了Iframe框架,同时也控制用户超时重新登录的限制,所以有时候登录页面会出现在页面中的某部分。

处理方式就比较简单就是在登录页面通过JavaScript进行一次判断即可

<script type="text/javascript">
??? if (window != top)
??????? top.location.href = location.href;
</script>

二:jQuery $(document).ready() 与window.onload的区别
1、执行时间
  window.onload必须等到页面内包括图片的所有元素加载完毕后才能执行。
????? $(document).ready()是DOM结构绘制完毕后就执行,不必等到加载完毕。

2、编写个数不同
  window.onload不能同时编写多个,如果有多个window.onload方法,只会执行一个,执行后面的一个。
????? $(document).ready()可以同时编写多个,并且都可以得到执行。

3、简化写法?
  window.onload没有简化写法 。
????? $(document).ready(function(){})可以简写成$(function(){})。

注意:window.onload和body.onload之间的关系和区别,最好自己亲自去实践一下。


三:解决文本框设置只读后按退键后退页面
document.documentElement.onkeydown = function (evt) {
??????? var b = !!evt, oEvent = evt || window.event;
??????? if (oEvent.keyCode == {
??????????? var node = b ? oEvent.target : oEvent.srcElement;
??????????? var reg = /^(input|textarea)$/i, regType = /^(text|textarea)$/i;
??????????? if (!reg.test(node.nodeName) || !regType.test(node.type) || node.readOnly || node.disabled) {
??????????????? if (b) {
??????????????????? oEvent.stopPropagation();
??????????????? }
??????????????? else {
??????????????????? oEvent.cancelBubble = true;
??????????????????? oEvent.keyCode = 0;
??????????????????? oEvent.returnValue = false;
??????????????? }
??????????? }
??????? }
??? }检测退格键时,所对应的操作进行判断,来处理禁用回退页面刷新的问题。

?

四:转页
1. history.go(-1), history.go(-2);[返回两个页面]

2. history.back().

3. window.history.forward()返回下一页

4. window.history.go(返回第几页,也可以使用访问过的URL)