前几天将IE升级到IE9了,但是在调试程序的过程中碰到了两个问题。
IE9中使用JqueryUI,在工程中使用了jqueryui的Tabs,以前测试工程一般都
是在chrome中,或者Firefox中,一直没发现这个问题,问题截图如下:
当我拖动垂直滚动条是,就会出现上边这个图的状况,而正常显示如下:
当我拖动滚动条时,图像不会出现叠加。
上网查了下,发现jqueryui在IE9下有bug,
http://forum.jquery.com/topic/jquery-ui-does-not-work-on-ie9
(2)第二个问题就是Ajax的执行,可参考Grails实现复杂的数据录入这篇文章,这里
边使用了ajax,刚开始在chrome下进行测试,没遇到问题,但是昨天在IE9下
测试时,发现了问题。例如,现在一共有4本书,当再次我添加图书,增加相
关图书时,出现4条记录,效果如下:
保存新添加的图书,这时应该有5本书了,但是再次增加新图书,添加相关图
书,结果如下:
仍是出现4本书,这就与实际需求不一样了,在IE9中,按F12,在浏览器下方
会出现类似fireBug的工具,再次调试程序,观察下边的请求结果,发现结果
是304,
或者我们可以在ajax请求的controller中写上一条打印语句,发现这条打印语
句就不执行,但清除浏览器缓存后,结果就正确了。
解决方法:
在ajax的URl中加上一个随机变量,这样没次都会相应,例如:
url = url+"&ts="+new Date().getTime();
再次调试程序,每次显示的结果都是正确的。通过浏览器的调试窗口,我们
IE9中使用JqueryUI,Ajax的问题也可以观察到每次响应的结果都是200.