javascript 常见错误(失误足迹)

转载 2007年09月20日 21:54:00

感觉很久没有写 js啦

1.错误显示:IE: 缺少";"FireBUG显示missing ; before statement

原因:将关键字(函数)写错啦,晕,function test(){return;}写成了functinion

2.没有JS报错,感觉明明是return false,结果还是当return true执行了.
答案:可能是在return false 前面有一个不报错,但是其实是会出错的语句.如经常用到的.focus语句,我们可能在把当前焦点置于一个单选按钮或多选按钮上了,这实际是会导致内部错误的,有时候IE所报的错误,其实早在前面就已经出现啦

3.jsscrollbar(图片滚动条)点击时无法移动,将另外一种写法完全可替代document.body.scrollTop,document.documentElement.scrollTop取代

4.实现div(style:position:absolutely)浮动广告时,firefox竟然无效,原来数据后面要加 "px";

var div=document.getElementById("div");
 div.style.top=document.documentElement.scrollTop+'px';

5.new Date()对象没办法解析2005-07-18这种日期格式,(参数分开时月份为0-11),

解决:将-替换成/

function dateadd(dd,num)
{
 //可以加上错误处理
 dd=dd.replace("-","/");
 var a = new Date(dd);
 alert(a);
 a = a.valueOf();
 a = a + num * 24 * 60 * 60 * 1000;
 a = new Date(a);
 alert(a.getFullYear() + "年" + (a.getMonth() + 1) + "月" + a.getDate() + "日");
}


window.onload=function()
{
 var str="replace content ,please notice that.";
 //replace(str);
 dateadd("2007-12-31",1);
}

6.原以为看完<professional js>可以对js掌握啦,但这三天的调试样式差不多让我崩溃啦。需求是要在页面上加三个按钮,分别是“页面字体变大”,“页面字体变小”,“还原到默认值”,

第一次的思想是遍历页面所有的tag,然后通过computerStyle(FF)或currentStyle(IE)来获取样式,然后逐个加2px,没有样式的,默认加12px;后来项目经理发现问题啦,原因是有的字体是px,有的字体是em,有的字体是pt,有的字体是%;失败告终;

第二次看了http://joomla.org的设计,直接更改document.body.style.fontSize设置 ,但大部分字体却仍然是不变的,查了一下,原来中国95%的网站都需要重构的原因之一是字体单位都用的是px,而不是国外大型网站用的em或%,导致页面的字体无法放大或缩小。

第三次 思路按joomla那种方式实现,将所有*.css文件中的font-size:的单位全部由px改成em(也应该可以是%),由项目经理成功完成。我仍然是一个失败者。      

7.extjs中的GridPanel打印。由于gridpanel只显示一部分内容,所以打印 时老是只打一点点,找到一个函数

document.body.innerHTML = ext_grid.body.dom.innerHTML;但且第一页只打印标题;后来改成Ext.DomQuery.select("div.x-grid3-header-inner")[0].innerHTML+Ext.DomQuery.select("div.x-grid3-body")[0].innerHTML,没有样式。最后找到第一页只打印标题的样式为:

.x-grid3-scroller{zoom:1;}去掉这个zoom就没有问题啦。还有所有的overflow="hidden"的样式也要去掉。

8.document.getElementById(id),当有两个相同的id时会出现随机一个的情况。、

解决:改成 document.getElementsByName(name).

 

9.location.href=loction.href 失效 ,但widnow.location.reload()可以。

原因:地址栏有#

解决:去掉"#" . location.href=location.href.split("#")[0];

10.Firefox下正常,IE下提示:”缺少标识符、字符串或数字“

这一般出现在类的定义时在最后一个属性或方法后加了逗号,在Firefox是无所谓的,而IE下就会出错。最好用vx.net 2008来调试一下

11.window.close在FF下无效

改成:window.opener=null;window.open("","_self");window.close();

12:IE:对象不支持此属性与方法

原因:.使用了关键字,

如var Lang={'delete':'Delete'};alert(Lang.delete);

没有在变量前面加var,如Ext.onReady(function(){ form=new Ext.formPanel({});});form前面应该加var

网上说的,body后面应该紧跟div,span之类的,不能是文本

16 extjs combo 弹出窗口始终是在位置(0,0).原因是hiddenName与Id冲突了。去掉id属性就可以啦。

以前的版本需要将hideTrigger:false ,参考 http://ddgrow.com/extjs-combobox-ie-bug#more-819

javascript常见错误

  • 2012年04月20日 14:24
  • 28KB
  • 下载

JQuery_JavaScript___this的工作原理及常见错误

对于Java的this使用参见:

JavaScript—在循环中创建闭包:一个常见错误

在循环中创建闭包:一个常见错误EDIT 在 JavaScript 1.7 引入 let 关键字 之前,闭包的一个常见的问题发生于在循环中创建闭包。参考下面的示例: p id="help">He...

深入理解JavaScript - 闭包 (四)常见的一个循环和闭包的错误详解

关于常见的一个循环和闭包的错误,很多资料对此都有文字解释,但还是难以理解。本文将以执行环境图示的方式来对此进行更直观的解释,以及对此类需求进行推衍,得到更合适的解决办法。...
  • yq_cs
  • yq_cs
  • 2017年07月23日 20:56
  • 109

sql初学习中常见的失误

一、一些常见的小失误 1 标点符号  select 字段时忘记写逗号 正确sql: select a,b from table 错误sql:select  a b from table ...

盘点PHP编程常见失误

本文盘点PHP开发者在编码时,容易忽略或不注意引起的小失误与错误。 变量声明 如果在一条语句中声明一个变量,如下所示:$var='value';编译器首先会求出语句右半部分的值,恰恰正是语句的这一...

JavaScript操作cookie的一个小小失误

最近在做一个基于SSH的网站。其中有一个登录模块,需要实现记住密码的功能。 就是在输入用户名的时候,如果该用户的密码被记住过,则在输完用户名后(当焦点离开时自动填充密码) ...

【JavaScript.1】揭JS面纱对比学习,窥web设计归纳足迹

初学JavaScript会对JavaScript何时用、有什么效果、怎么使用有一些模糊。另外对JavaScript、java、CSS、HTML、JQuery的概念混淆。本文为一些初学者在宏观学习上给予...

软件项目开发常见错误

  • 2017年11月15日 11:20
  • 14KB
  • 下载

java开发常见错误异常

  • 2017年09月26日 21:55
  • 2.98MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:javascript 常见错误(失误足迹)
举报原因:
原因补充:

(最多只允许输入30个字)