众果搜的博客

脚踏大地,仰望星空,致力于在线网络工具的开发与普及,以及其他思考

Search(博客搜索)

热文排行

最近发表

最新评论及回复

« 场内货币基金的其他选择文档找不同在线工具上线 »

Chrom下Javascript工作不正常注意检查ID属性

 调试一个包括Javascript的网页,其中涉及货币格式的显示,怎么弄都是在chrome下显示不正常,在IE下正常。更换js库文件也不行。然后通过chrome逐行调试,发现问题没有出现在格式转换上,而是出现在页面元素的命名上面,非IE浏览器许多只支持元素的id属性,通过id属性来命名元素,而不是name属性,如果你的元素只有name属性,在IE下工作正常,但是在非ie浏览器下,如chrome,fireforx,360,淘宝等浏览器下就无法正常工作。所以,必须为页面上的每个元素,要用到的每个元素定义id属性。

 
Quick Cross Browser JS question, when setting the value of a textbox:
 
document.getElementById("balanceText").innerText = "111";
and
 
document.getElementById("balanceText").value = "111";
Both Work grand in IE,
 
But they will not work in Chrome, FF, Opera or Safari.
 
Is there an alternate method that will work in these browsers ?
 
http://stackoverflow.com/questions/7714162/document-getelementbyid-innertext-in-chrome找到的答案:
All else being equal document.getElementById("balanceText").value = "111"; works fine in every significant* browser that supports JS.
 
Make sure that you have one, and only one, element with id="balanceText" and that it actually has that as its id and not just the name.
 
* you don't care about NS 4 do you?
 
另外,还需要注意的是,Date的getYeare函数不可用,要用getFullYear函数,显示结果有很大的差异,在非IE浏览器中。
 
Update1:这个问题的排查,花费了自己3-4个小时,最后通过一步一步调试,在国外找到解决办法。遇到长时间无法解决的问题,不能放弃,但可以适当放一放,有更好的思路,再来处理。坚持但不艰苦,放松但不放弃。
Update2:不要在页面脚本中使用vbscript脚本,也就是vbs,这个只有微软的IE浏览器支持,其他浏览器一概不支持,所以,在编写网页时,尽量避开使用vb脚本。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

Powered By Z-Blog 1.8 Spirit Build 80722 Code detection by Codefense

Copyright www.zhongguosou.com. Some Rights Reserved.