【问题形容】前端性能的优化做过哪些?
一、页面级优化
- 缩小 HTTP申请数
- 将内部脚本置底(将脚本内容在页面信息内容加载后再加载)
- 异步执行 inline脚本(其实原理和下面是一样,保障脚本在页面内容前面加载。)
- Lazy Load Javascript(只有在须要加载的时候加载,在个别状况下并不加载信息内容。)
- 将 CSS放在 HEAD中
- 异步申请 Callback(就是将一些前端培训行为款式提取进去,缓缓的加载信息的内容)
- 缩小不必要的 HTTP跳转
- 防止反复的资源申请
二、代码级优化
【问题形容】 Javascript
(1). DOM:DOM操作应该是脚本中最耗性能的一类操作,例如减少、批改、删除 DOM元素或者对 DOM汇合进行操作。
(2). 慎用 with
(3). 防止应用 eval和 Function
(4). 缩小作用域链查找(这方面设计到一些内容的相干问题)
(5). 数据拜访
(6). 字符串拼接
【问题形容】浏览器兼容性的问题有哪些?
IE6不反对png-24通明图片
解决办法:图片应用gif格局,或者png-8格局图片。
【问题形容】像素问题:
解决办法:对另一个div也应用float;
【问题形容】浏览器默认的margin和padding不同
解决方案是加一个全局的*{margin:0;padding:0;}来对立。
【问题形容】 IE5-IE8不反对opacity
解决办法:这时能够另外增加ie滤镜alpha
【问题形容】IE6不能定义1px左右宽度的容器
解决办法:因为行高line-height在IE6下有默认值,设置 line- height:1px|overflow:hidden|zoom:0.08
【问题形容】IE6不反对min-*:问题呈现的浏览器:IE6及其更低的版本
解决办法:利用IE6不辨认!Important,给元素设置固定高度,并且设置元素高度主动。
【问题形容】双外边距浮动问题:IE6及其更低的版本
解决办法:将元素的display属性设置为inline,因为元素是浮动的,所以这么设置
【问题形容】Firefox点击链接呈现的虚线框:Firfox浏览器
解决办法:咱们为了和其余浏览器保持一致,须要去掉虚线框,咱们能够给a标签设置outline属性
【问题形容】Cookie、session和localStorage的区别
答:cookie的内容次要包含:名字、值、过期工夫、门路和域。门路与域一起形成cookie的作用范畴。若不设置工夫,则示意这个cookie的生命期为浏览器会话期间,敞开浏览器窗口,cookie就会隐没。这种生命期为浏览器会话期的cookie被称为会话cookie。
会话cookie个别不存储在硬盘而是保留在内存里,当然这个行为并不是标准规定的。若设置了过期工夫,浏览器就会把cookie保留到硬盘上,敞开后再关上浏览器这些cookie依然无效直到超过设定的过期工夫。对于保留在内存里的cookie,不同的浏览器有不同的解决形式session机制。
当程序须要为某个客户端的申请创立一个session时,服务器首先查看这个客户端的申请里是否已蕴含了一个session标识(称为session id),如果已蕴含则阐明以前曾经为此客户端创立过session,服务器就依照session id把这个session检索进去应用(检索不到,会新建一个),如果客户端申请不蕴含session id,则为客户端创立一个session并且生成一个与此session相关联的session id,session id的值应该是一个既不会反复,又不容易被找到法则以仿造的字符串,这个session id将被在本次响应中返回给客户端保留。保留这个session id的形式能够采纳cookie,这样在交互过程中浏览器能够主动的依照规定把这个标识发送给服务器。
发表回复