最近遇到了两起JS未加var声明变量所引起的IE兼容性问题,仔细分析了下,出错见下图:
当所声明变量在页面dom中节点有同名id存在,并且不在form表单中,会出现此问题。
<script> testId = ''; </script> <form name="form1"> <input type="input" id="testId" name="testId" /> </form>
<script> testId = ''; </script> <input type="input" id="testId" name="testId" /> <form name="form1"> </form>
最后建议大家尽量规范的加上var去声明js变量,不管想要全局变量还是局部变量。