天天看点

WEB前端编码规范及个人经验总结

1.关于JS的引入顺序问题

建议在body标签下引用,不会阻止浏览器页面的渲染。如若非要在<head>标签内部提前引用,对于涉及DOM操作的js函数建议在

<body  onload="init()">
           

标签中加入onload事件,js操作需放入init()函数中。

2.对于window.onload

onload事件不要用匿名函数。一个html页面中可同时调用多次window.onload事件,如若为匿名函数,浏览器会自上而下执行,最终会最后一个onload所调用的匿名函数会覆盖前面的。

若一个html文档中同时有

window.onload= function(){}
<body onload="init()"></body>
           

,只触发init()。原因:window.onload为匿名韩式,被init()覆盖。解决方法:window.onload不要用匿名函数。

$(document).ready、window.onlad、<body onload="init()">
           

,三者在不用匿名函数的情况下依次触发,

<body onload="init()"></body>
           

最后触发。

3.对于页面高频率同时发送多个异步请求的问题

如果页面初始化时依次会高频率多次发送异步请求,建议在回调中依次触发,否则页面连续刷新后导致server返回数据与请求不对应,导致请求返回值错误。

4.页面自适应问题

当页面嵌入iframe时,

@media screen and (max-height:604px)
           

max-height指的不是浏览器视口高度,而是document的innerHeight。

继续阅读