来,认识下XMLHttpRequest2

XMLHttpRequest综述

XMLHttpRequest在维基百科的定义”XMLHttpRequest (XHR) is an API in the form of an object whose methods transfer data between a web browser and a web server.” 它是一个在服务端和客户端之间进行传输数据的浏览器接口,说白了就是HTTP(S)的通信,依赖于浏览器的javascript环境。通信的数据格式限于XML,JSON,HTML,plain text。
但是这个接口的最初版本,各个浏览器厂家的实现也不尽相同,没有被标准化。这么下去也不是个事儿,技术总得进步,接口总得统一,不然不仅开发者闹情绪,用户都快不满足了,后来html5出现以后,这个标准化的工作就提上了日程,谁去做?当然W3C那帮老大哥啊,凡是和www有关的草案,正式标准都是得那发话。
所以众望所归,这个XMLHttpRequest的标准草案在2008年落成,因为增加了许多新的技能,所以叫XMLHttpRequest有点赶不上时代潮流了,叫XMLHttpRequest plus?这个名字有点apple,还是叫XMLHttpRequest level2吧。
到底增加了哪些功能了呢?那先研究下XMLHttpRequest level1基础?那还废什么话直接捋袖子干~
在控制台吧XMLHttpRequest打出来会发现他是一个构造函数,是一个可以继承的类,要使用其上的接口方法属性需要实例化这个方法。
新建一个XMLHttpRequest的实例

阅读全文

重新认知下History这家伙

DOM中的window对象通过window.history方法提供了对浏览器历史记录的读取,让你可以在用户的访问记录中前进和后退。从HTML5开始,我们可以开始操作这个历史记录堆栈。

1.window属性history的方法

使用back(),forward(),和go()方法可以在用户的历史记录中前进和后退

用户后退行为,这个方法会像用户点击了浏览器工具栏上的返回键一样。

1
window.history.back();

阅读全文

git命令有这一篇就差不多了

哈哈,有点标题党,人还是要谦虚一点。这里为了方便查字典,整理了常用的git操作,正常开发工作情况下应该很全了,如果随后遇到新的奇淫操作会不断更新的~

生成ssh key
1
2
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
ssh-keygen -t rsa -C "joacycode@163.com
用户名、邮箱配置
1
2
git config user.name yourname --local
git config user.email yourname@emmail.com --local

阅读全文

H5项目常见问题及注意事项

Meta基础知识:

H5页面窗口自动调整到设备宽度,并禁止用户缩放页面

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
//一、HTML页面结构
<meta name="viewport" content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" />
// width 设置viewport宽度,为一个正整数,或字符串‘device-width’
// height 设置viewport高度,一般设置了宽度,会自动解析出高度,可以不用设置
// initial-scale 默认缩放比例,为一个数字,可以带小数
// minimum-scale 允许用户最小缩放比例,为一个数字,可以带小数
// maximum-scale 允许用户最大缩放比例,为一个数字,可以带小数
// user-scalable 是否允许手动缩放

//二、JS动态判断
<script>
var phoneWidth = parseInt(window.screen.width);
var phoneScale = phoneWidth/640;
var ua = navigator.userAgent;
if (/Android (\d+\.\d+)/.test(ua)){
var version = parseFloat(RegExp.$1);
if(version>2.3){
document.write('<meta name="viewport" content="width=640, minimum-scale = '+phoneScale+', maximum-scale = '+phoneScale+', target-densitydpi=device-dpi">');
}else{
document.write('<meta name="viewport" content="width=640, target-densitydpi=device-dpi">');
}
} else {
document.write('<meta name="viewport" content="width=640, user-scalable=no, target-densitydpi=device-dpi">');
}
</script>

阅读全文

浅析linux chmod命令

最近遇到一同事问我怎么快速的给文件夹加密,我寻思着这货又收集什么见不得人的机密了,给文件夹或者文件加密的方式有很多,要钱的不要钱的就说你想要什么样的吧。得,整了半天给我来句只要别人没权限打开就成,那这不好办么,直接设个权限不就完事了么,暂时糊弄糊弄一些生瓜蛋子做到打不开就死心还是可以的。最近正好遇到一些涉及到权限问题的事,就在这捋一捋,认识认识新词。
linux有个命令叫chmod,就是更改权限的作用。

1
chmod [-cfvR] [--help] [--version]  mode  file...

阅读全文

js基础核心梳理之Video

最近在做H5的播放器video,随带着查查资料研究下flash工具和H5技术标准现在的情况。相比较于flash,H5在越来越明朗的移动市场上更具有光明的前景,youtube、apple的无flash产品线似乎已经引领了某种趋势,即使在pc上随着现代浏览器厂商的对H5的支持越来越全面,H5也能占据一席之地。原生的api video audio canvas等普及,H5这个新技术标准会把web动画视频游戏领域带入另一个高潮。

阅读全文

Html Css编码规范心得

Css编码规范 Html编码规范 Css类名约定…

阅读全文

js基础核心梳理之常用事件

这里整理了一般事件、页面相关事件、表单相关事件、滚动字幕事件、滚动字幕事件、编辑事件、数据绑定的相关api,仅供参考查阅。

阅读全文

shell快捷启动sublime vsCode方法

最近在使用命令行去打开需要编辑的文本的时候,一直想使用自己习惯的编辑器去打开(sublimeText、vsCode都是友好型的优秀的编辑器),默认的命令行vim编辑器用的不是很习惯,于是想到使用alias方法可以做这些事,只需要简单几步,就可以实现,以下针对sublime为例。
环境平台:mac

阅读全文

js基础核心梳理之DOM操作

一、DOM创建

DOM节点(Node)通常对应于一个标签,一个文本,或者一个HTML属性。DOM节点有一个nodeType属性用来表示当前元素的类型,它是一个整数:

Element,元素Attribute,属性Text,文本DOM节点创建最常用的便是document.createElement和document.createTextNode方法:

1
2
var node1 = document.createElement('div');
var node2 = document.createTextNode('hello world!');

阅读全文