发表于: 2017-05-01 22:01:11
1 841
今天完成的事情:
学习关于浏览器的兼容(以作了解,拓宽视野):
* png24位的图片在iE6浏览器上出现背景,解决方案是做成PNG8.也可以引用一段脚本处理.
* IE6双边距bug:块属性标签float后,又有横行的margin情况下,在ie6显示margin比设置的大。
* 浮动ie产生的双倍距离(IE6双边距问题:在IE6下,如果对元素设置了浮动,同时又设置了margin-left或margin-right,margin值会加倍。)
#box{ float:left; width:10px; margin:0 0 0 100px;}
* 渐进识别的方式,从总体中逐渐排除局部。
css
.bb{
background-color:#f1ee18;/*所有识别*/
.background-color:#00deff\9; /*IE6、7、8识别*/
+background-color:#a200ff;/*IE6、7识别*/
_background-color:#1e0bd1;/*IE6识别*/
}
* IE下,event对象有x,y属性,但是没有pageX,pageY属性;
Firefox下,event对象有pageX,pageY属性,但是没有x,y属性.
* Chrome 中文界面下默认会将小于 12px 的文本强制按照 12px 显示,
可通过加入 CSS 属性 -webkit-text-size-adjust: none; 解决.
* 上下margin重合问题
ie和ff都存在,相邻的两个div的margin-left和margin-right不会重合,但是margin-top和margin-bottom却会发生重合。
解决方法,养成良好的代码编写习惯,同时采用margin-top或者同时采用margin-bottom。
学习ajax(实现的步骤方法):
1.创建XMLHttpRequest对象,也就是创建一个异步调用对象
2.创建一个新的HTTP请求,并制定该HTTP请求的方法、URL及验证信息
3.设置响应HTTP请求状态变化的函数
4.发送HTTP请求
5.获取异步调用返回的数据
6.使用JavaScript和DOM实现局部刷新
jQuery中的Ajax(写法简便,但是要理解原理):
.load()方法是局部方法,因为它需要一个包含元素的jQuery对象作为前缀,而$.get()和$.post是全局方法,无需指定某个元素,对于用途而言,.load()适合做静态文件的异步获取,而对于需要传递参数到服务器页面的,$.get()和$.post()更合适。
GET和POST传入的data是一个键值对对象,不同的是GET传入的data是通过地址栏传输的,而POST是通过表单提交的。
同步和异步(所谓的异步,一直感觉跟懒加载很像啊):
同步:发送方发出数据后,等待接收方发回响应以后才发下一个数据包
异步:发送方发出数据后,不等待接收方响应接着发送下个数据包
简单点理解就是同步只能一件事一件事来做,异步可以多件事同时进行
异步加载和延迟加载
1.异步加载的方案:动态插入script标签
2.通过ajax去获取js代码,然后通过eval执行
3.script标签上添加defer或者async属性
4.创建并插入iframe(怎么是还用iframe),让它异步执行js
5.延迟加载:有些js代码并不是页面初始化的时候就需要的,而是出发特定的情况时才需要
何时使用POST(了解get和post区别的前提下):
无法使用缓存文件(更新服务器上的文件或数据库)
向服务器发送大量数据(POST没有数据量限制)
发送包含未知字符的用户输入时,POST要更加稳定
明天要做的事情:
基础知识学习,储备。
整理清楚知识点的逻辑关系。
遇到的问题:
暂无
收获:
任何难点,在理解了它的原理之后都是不难的。
写代码的时候遇到的问题都是基础知识不牢固产生的困惑。
评论