name
用id
7.select 在ie6下遮盖 使用iframe嵌套
如何设置为标准模式:
加入以下任意一种:HTML4提供了三种DOCTYPE可选择:
<!DOCTYPE HTML PUBLIC ”-//W3C//DTD HTML 4.01 Transitional//EN” ”http://www.w3.org/TR/html4/loose.dtd“>
<!DOCTYPE HTML PUBLIC ”-//W3C//DTD HTML 4.01//EN” ”http://www.w3.org/TR/html4/strict.dtd“>
<!DOCTYPE HTML PUBLIC ”-//W3C//DTD HTML 4.01 Frameset//EN” ”http://www.w3.org/TR/html4/frameset.dtd“>
XHTML1.0提供了三种DOCTYPE可选择:
(1)过渡型(Transitional )
<!DOCTYPE html PUBLIC ”-//W3C//DTD XHTML 1.0 Transitional//EN” ”http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd“>
(2)严格型(Strict )
<!DOCTYPE html PUBLIC ”-//W3C//DTD XHTML 1.0 Strict//EN” ”http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd
(3)框架型(Frameset )
<!DOCTYPE html PUBLIC ”-//W3C//DTD XHTML 1.0 Frameset//EN” ”http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd
“>
如何判定现在是标准模式还是怪异模式:
方法一:执行以下代码
alert(window.top.document.compatMode) ;
//BackCompat 表示怪异模式
//CSS1Compat 表示标准模式
方法二:jquery为我们提供的方法,如下:
alert(
.boxModel)alert(
.
b
o
x
M
o
d
e
l
)
a
l
e
r
t
(
.support.boxModel)
15.你如何对网站的文件和资源进行优化?期待的解决方案包括:
清除浮动方法:
(1)添加额外(空)标签
通过在浮动元素末尾添加一个空的标签例如 <div style=”clear:both”></div>
优点:通俗易懂,容易掌握;
缺点:增加无意义的标签,有违结构与表现的分离。
(2)父元素设置 overflow:hidden
通过设置父元素overflow值为hidden;在IE6中还需要触发 hasLayout ,例如定义width或 zoom:1,同时不能定义height,使用overflow:hidden时,浏览器会自动检查浮动区域的高度;
优点:不存在结构和语义化问题,代码量极少;
缺点:内容增多时候容易造成不会自动换行导致内容被隐藏掉,无法显示需要溢出的元素。
(3)父元素也设置浮动
优点:不存在结构和语义化问题,代码量极少;
缺点:使得与父元素相邻的元素的布局会受到影响,不可能一直浮动到body,不推荐使用。
(4)给父元素添加clearfix类
由于IE6-7不支持:after,使用 zoom:1触发 hasLayout。
优点:结构和语义化完全正确,代码量居中;
缺点:复用方式不当会造成代码量增加。
clearfix类代码如下:
-
//
:after会在元素内容——而不是元素后面插入一个伪素,该规则只添加了一个清除的包含句点作为非浮动元素,注意,
:after不是伪类,而是伪元素
-
.clearfix
:after {
-
content:
“.”;
-
display: block;
-
height:
0;
-
visibility: hidden;
-
clear: both;
-
}
-
// 触发
IE6、7下的
haslayout
-
.clearfix {
-
*
zoom:
1;
-
}
普通事件:覆盖问题、可读性问题、this 传递问题
W3C 的现代事件绑定比我们自定义的好处就是:1.不需要自定义了;2.可以屏蔽相同的函数;3.可以设置冒泡和捕获。
IE:1.不支持捕获,只支持冒泡;2.IE 添加事件不能屏蔽重复的函数;3.IE 中的this 指向的是window 而不是DOM 对象,如果要传递this,改成call 即可。4.在传统事件上,IE 是无法接受到event 对象的,但使用了attchEvent()却可以,但有些区别。
相同点:都可以在特定作用域(环境)下调用函数;
不同点:传递的参数形式不同,call方法的参数必须一个个列举出来,而apply方法的参数是以一个数组的形式进行传递,也支持arguments参数。
10.ajax请求时,如何解释json数据
14.闭包是什么,有什么特性,对页面有什么影响
3 通过保护变量的安全实现JS私有属性和私有方法
15.如何阻止事件冒泡和默认事件
16.添加 删除 替换 插入到某个接点的方法
17.解释jsonp的原理,以及为什么不是真正的ajax
18.javascript的本地对象,内置对象和宿主对象
19.document load 和document ready的区别
20.”==”和“===”的不同
21.javascript的同源策略