统一开发环境UDE 2013-07-03
在些前端页面的时候遇到一个很屌丝的问题,关于浏览器的兼容性问题。在ie7/6 , 360等一段js始终报错,其他浏览器都没问题。主要是html:标签 和 js冲突了。
没改之前代码:
<form name="louyuform" id="louyuform" method="post" target="_self" onsubmit="false" > <html:hidden property="louyuname" value="${louyu_name}" /> <html:hidden property="area" value="${area}" /> <html:hidden property="plate" value="${plate}" /> <html:hidden property="initials" value="${initials}" />
这段代码一开始是写在整个页面的前端的,就是这段代码阻挠IE6/7 360浏览器中JS的效果。一直导致“出现未知错误”
JS代码:
var area1 = document.louyuform.area.value; // alert(area1); var plate1=document.louyuform.plate.value; if(plate1!=null&&plate1!=""){ document.getElementById("plate").style.display="block"; var a=document.getElementById('plate'); $('#plate').html('板块:'+plate1+'<span onclick="removePlate();"></span>');
这里的这块代码在IE6/7 360 中都是失效的“$('#plate').html('板块:'+plate1+'<span onclick="removePlate();"></span>');”,
就算用最原始的JS代码也是一样:document.getElementById('plate').innerHTML();也是始终失效。
修改过后的代码:
<html:hidden property="louyuname" value="${louyu_name}" /> <html:hidden property="area" value="${area}" /> <html:hidden property="plate" value="${plate}" /> <html:hidden property="initials" value="${initials}" /> </form>
我是把关于html标签的一部分全部拉到页面的结尾,这样关于IE6/7 360的失效问题就解决了。
这里我猜想是在ie6/7 360中这段html标签拦截了JS的操作。不知道是否是这样,在这里还请各位大神多多指教