1.dom结构,两个节点之间可能存在哪些关系以及如何在节点之间任意移动
dom生成一个dom树,parentnode,childnode,firstchild
2.dom操作,增删改查
.createElement(), createTextNode(), appendChild(),removeChild(),replaceChild(),cloneChild(),insertBefore(),insertAfter()
.getElementById(), getElementsByTagName(), getElementsByClassName(), getElementsbyName()
3.事件-如何使用事件,以及dom和标准dom模型之间的差别
a.传统模式:window.onload = function(){}
b.IE浏览器,只能冒泡,不能捕获,attachEvent(),detachEvent(),this永远指向window object,调用event需要window.event
c.W3C标准,addEventListener,removeEventListener,匿名函数不能remove,可控冒泡或者捕获
4.XMLHttpRequest——这是什么、怎样完整地执行一次GET请求、怎样检测错误。
XMLHttpRequest是一种页面加载完后与服务器进行通信的方法,是AJAX中的一种方法,可以用原生js,也可以用jquery中封装好的$.get()方法。检测错误可以用error事件反而错误状态码。
先处理兼容问题,向前兼容IE5,6.然后用readystate方法,然后发送请求
5.严格模式和混杂模式-如何触发,区分它们意义是什么
DOCTYPE用来规定模式,一般不写DOCTYPE会默认混杂模式,严格模式是一种规范的模式,有利于规范化开发,混杂模式主要是由于W3C标准出台之前公司都有各自制定的标准,使用混杂模式是为了让这些老旧的网站仍能继续使用,不过混杂模式不推荐。
6.盒模型-外边距,内边距,边框的关系,以及IE8以下的盒模型
正常模式下,width指的是内容的宽度,但是IE8以下的怪异模式下width是内容宽度+内边距+边框
CSS3中的box-sizing属性:content-box默认,border-box包括内边距和边框
7.行级元素和块级元素-怎么用css控制他们,如何合理的使用它们
display:inline和display:block
8.浮动元素-怎么使用它们,会有什么样的问题,如何解决它们
float:left和float:right
问题:脱离文档流,a.父级无法被撑开,b.同级非浮动元素会紧随其后,c.如果浮动的不是第一个元素会影响页面显示结构。
解决:父级无法撑开使用clearfix属性
其他使用清除浮动7种方法:1.父级添加伪元素:after和zoom 2.父级添加overflow:hidden 3.父级添加overflow:auto
4.父级给定height 5.clear:both 6.父级一起浮动 7.父级display:table
9.HTML和XHTML-二者的区别,更应该使用哪个?
XHTML更加严格,如标签必须被关闭,必须被正确的嵌套,必须有根元素,图片必须有声明,name代替id。
XHTML是XML的html版本,xml过于严格,一点错误直接崩掉
10.JSON-作用、用途、设计结构
与XML一样用来传输数据,用于服务器和客户端交换数据,{"name":"haosen","age","22","gf":["name":"yihang"]}
相比XML,JSON更加轻量化,结构更为清晰,易于阅读,且使用了压缩技术,节省宽带