最近把YUI()引入到了现在做的项目当中,感觉做ajax非常顺手
由于firefox下有firebug这个插件,所以开发的时候都是以ie为准
稍微在ie下做些测试,一般都没有问题。
这次被一个逗号搞得非常辛苦。
var send_email_callback =
{
success:handleSuccess,
failure:handleFailure,
};
这段代码在firefox和ie下都不会报错
firefox运行正常,ie下导致整个脚本失效
调试都是用alert来调试,但是ie下alert的功能也失效了,无论alert放在文件的那个位置,都不会有弹框出来
整个js文件代码长达300行,找的好辛苦。。。
正确的应为:
var send_email_callback =
{
success:handleSuccess,
failure:handleFailure
};
唉,一个逗号引发的辛苦啊。。
这个错误应该是受到php里面array写法的影响
经常在定义array时为了给array添加新值方便,一般都是会再加一个逗号。。。
另外,还有个地方也会导致脚本在ie下失效
_div_sending.className = 'mail_sending';
//_div_sending.class = 'mail_sending';
其中第二行会导致脚本不能运行,也不会报错,同样无论什么地方放一个alert都不会有反应
额,以前看一本书上说,给控件加class的值,这样好像会做到多个浏览器兼容。。。faint,或许是我记错了吧。。
解决的办法,注释掉,或者用yui自带的添加的class的方法
这段代码是几个星期前写的,那个时候还没有看到yui给控件加class的方法
YAHOO.util.Dom.addClass(_div_sending, 'mail_sending');
希望有人可以告诉我,ie下调试js简单的方法
额,我的js的水平也太臭了。。。额。。。。