前端面试题收藏

1. 你了解的html  和 w3c标准

    w3c标准: 由万维网联盟组织制定,规定了一组关于web页面的结构、表现 和 行为的标准。例如 在块元素中可以嵌套行内元素就符合标准。在行内元素中包含块元素就不符合标准。(个人理解)

2.css中hack技术

    _,*,+,\9,!important

1 color:#0000FF\9; ;/*ie6,ie7,ie8*/ 
2 *color:#FFFF00;/*ie7*/ 
3 _color:#FF0000;/*ie6*/ 

  \0 才是IE8 css hack的专属(http://www.jb51.net/css/24944.html

3.介绍下你认识的盒模型

   先看看牛人对盒模型的理解:http://www.chinaz.com/design/2010/1229/151993.shtml

  注:

       盒子模型主要适用于块级元素。行内布局模型(inline layout model)——定义了行内元素是如何定位的。

       当我们放置一个块级元素于页面上时,并且不设置它的定位属性(relative,absolute,fixed),即position:static,或者设置了position:relative的情况下,块的宽度是延伸自动填充满它的父元素的宽度区域

4. Http 和 Https 的区别和联系

5.CSS优化

6.兼容性 

7.CSS层叠

8.CSS盒模型

   W3C组织用来定义浏览器解析DOM元素的一套规范,主要用作DOM 元素的布局和样式以及对周围元素的相关特性的影响。它具有 内容(content)、填充(padding)、边框(border)、边界(margin) 这四大属性。

9.什么叫ajax,ajax的流程,ajax跨域访问

  Ajax:  Asyncronous  javacript and XML, 主要解决了 “等待”  --- “响应” --- “等待” 的问题。

  流程:a. javascript 执行环境(与浏览器有关)创建一个XMLHttpRequest对象 xhr               

1 var xmlhttp;
2 if (window.XMLHttpRequest)
3   {    // code for IE7+, Firefox, Chrome, Opera, Safari
4       xmlhttp=new XMLHttpRequest();
5   }
6 else
7   {    // code for IE6, IE5
8       xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
9   }

          b. xhr设置请求方法 xhr.open(method,...)

          c. xhr 设置请求头  xhr.setRequestHeadr(...);

          d. xhr 设置监听句柄 也就是 函数的引用 xhr.onreadyStateChange = callbackF

          e. 定义  callbackF 的方法签名 

          g.在回调函数中处理业务,其中根据  xhr 对象属性 readyState 的值判断请求的状态进行业务操作

               xmlhttp.readyState==4 && xmlhttp.status==200

             通过xhr.responseText 获取json格式字符串 通过 xhr.responseXML获取 xml  格式数据

 10.session 和 cookie 的区别

         a.cookie 是客户端用来保存信息的载体,session 是服务器端用来保存信息的载体。

         b.cookie的生成可以通过浏览器根据服务器端的请求响应来设置,也可以通过js操作API生成。

         c.考虑到安全性的问题,建议使用session机制,若是考虑到服务器端的性能问题则可以考虑客户端保存信息的方式,包括cookie。

            当然最好是二者能有机结合。

 11.JS简单获取IE和火狐下鼠标坐标的方法

      FF下获取鼠标坐标很简单,直接 event.pageX、event.pageY,不用考虑滚动条~
      IE下 EVENT 事件是没有 pageX和pageY的哦~需要考虑滚动条位置~
      用一个简单的判断即可:(mx、my分别是存放鼠标坐标的变量)。
1 var mx = event.pageX?event.pageX:event.clientX+document.body.scrollLeft;
2 var my = event.pageY?event.pageY:event.clientY+document.body.scrollTop;

 

     顺便说下,获取坐标可以让弹出层的LEFT和TOP跟随鼠标的坐标位置哟~
     比如我要开发的这个弹出物品详细资料的界面。
  

      http://www.ahome.me/read.php?tid=1405

 12. 带有flash等控件的页面,遮罩层的实现

 13. 页面中含有同一name属性的元素,怎么获取和保存使用

 14.判读一个对象的属性是否存在的方式

         一般情况下,可以采用 对象.属性 == undefined;来进行判读。在IE低版本中可能存在Bug,所以推荐使用 typeof 对象.属性 == "undefined"

     的方式来进行判读。 

 15.jquery中删除一个dom 节点的方法 remove? or delete?

      引伸,empty()、delete()、remove() 等的区别

 16.图片轮播实现的原理

 17.怎样做到页面定时刷新(长轮询和htttp流)

 18.写出几种IE6 BUG的解决方法

     a.双边距BUG float引起的  使用display
     b.3像素问题 使用float引起的 使用dislpay:inline -3px  
     c.超链接hover 点击后失效  使用正确的书写顺序 link visited hover active
     d.Ie z-index问题 给父级添加position:relative
     e.Png 透明 使用js代码 改
     f.Min-height 最小高度 !Important 解决’
     g.select 在ie6下遮盖 使用iframe嵌套
     h.为什么没有办法定义1px左右的宽度容器(IE6默认的行高造成的,使用over:hidden,zoom:0.08 line-height:1px)
posted @ 2014-02-18 07:55  未来动力  阅读(262)  评论(0编辑  收藏  举报