最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

前端工程师笔试面试题

来源:动视网 责编:小OO 时间:2025-10-01 09:53:01
文档

前端工程师笔试面试题

1,让一个input的背景颜色变成红色12,div的高宽等于浏览器可见区域的高宽,浏览器滚动,div始终覆盖浏览器的整个可见区域思路:(1)先放置一个div1,浮动:position:absolute;top:0px;left:0px;(2)再放置一个div2,浮动:position:absolute;top:0px;left:0px;width:100%;height:100%;(3)在div2中放置一个div3,令其高度超过浏览器高度,使div2产生滚动条(4)对html,body进行样式
推荐度:
导读1,让一个input的背景颜色变成红色12,div的高宽等于浏览器可见区域的高宽,浏览器滚动,div始终覆盖浏览器的整个可见区域思路:(1)先放置一个div1,浮动:position:absolute;top:0px;left:0px;(2)再放置一个div2,浮动:position:absolute;top:0px;left:0px;width:100%;height:100%;(3)在div2中放置一个div3,令其高度超过浏览器高度,使div2产生滚动条(4)对html,body进行样式
1,让一个input的背景颜色变成红色

1

2,div的高宽等于浏览器可见区域的高宽,浏览器滚动,div始终覆盖浏览器的整个可见区域

思路:

(1)先放置一个div1,浮动:position:absolute;top:0px;left:0px;

(2)再放置一个div2,浮动:position:absolute;top:0px;left:0px;width:100%;height:100%;

(3)在div2中放置一个div3,令其高度超过浏览器高度,使div2产生滚动条

(4)对html,body进行样式设置:width:100%;height:100%;overflow:hidden->不让浏览器产生滚动条,避免页面出现两个滚动条

(5)编写JavaScript,另div2的高度等于页面可见高度,宽度等于页面可见宽度,注意,在计算完可见高度height和可见宽度width后,要对这两个值做处理,可见宽度-div2的滚动条的宽度,滚动条的宽度我这里假设是20px

这样题目基本就完成了,不过浏览器的兼容性还不是很好。

贴出代码:

01

02

03

04

05

06

07

08

09

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39http://www.w3.org/TR/html4/loose.dtd">

前端试题(html3/4)

   html, body {height:100%;width:100%;margin:0;overflow:hidden;}

   #fullDiv {width:100%;height:100%;top:0px;left:0px;position:absolute;background:#eee;border:1px solid red;}

   #body {width:100%;height:100%;overflow:auto;z-index:999;position:absolute;top:0px;left:0px;}

 id="fullDiv">

 id="body">

 style="height:1000px;border:1px solid black;background:#ee0;position:absolute;">

   function getBrowerSize() {

      if(document.compatMode == "BackCompat"){

         cWidth = document.body.scrollWidth;

         cHeight = document.body.scrollHeight;

      }

      else {

         cWidth = document.documentElement.scrollWidth;

         cHeight = document.documentElement.scrollHeight;

      }

      return {width:(cWidth-21)+"px", height:(cHeight - 4)+"px"};

   }

   var floatDiv = document.getElementById('fullDiv');

   var size = getBrowerSize();

   alert("width:"+size.width+" height:"+size.height);

   floatDiv.style.height = size.height;

   floatDiv.style.width = size.width;

3,IE、FF下面CSS的解释区别

(1) 让页面元素居中

ff{margin-left:0px;margin-right:0px;width:***}

ie上面的设置+text-align:center

(2) ff:不支持滤镜

ie:支持滤镜

(3) ff:支持!important

ie支持*,ie6支持_

(4) min-width,min-height

FF支持,IE不支持,IE可以用css expression来替代

(5) Css Expression

FF不支持,IE支持

(6) cursor:hand

IE下可以显示手指状,FF下不行

(7) UL的默认padding和margin

IE下ul默认有margin,FF下ul默认有padding

(8) FORM的默认margin

IE下FORM有默认margin,FF下margin默认为0

4,一个定宽元素在浏览器(IE6,IE7,Firefox)中横向居中对齐的布局,请写出主要的HTML标签及CSS

思路:

IE6/7:text-align:center

Firefox:margin:0 auto(margin-top和margin-bottom也可以为其他数字,关键是margin-left,margin-right为auto)

贴出代码:

01

02

03

04

05

06

07

08

09

10

11

12

13

14http://www.w3.org/TR/html4/loose.dtd">

让页面元素居中(兼容各个浏览器)

this div will be centerd!

5,CSS中margin和padding的区别

margin是元素的外边框,是元素边框和相邻元素的距离

Padding是元素的内边框,是元素边框和子元素的距离

6,最后一个问题是,如何制作一个combo选项,就是可以输入可以下拉菜单选择。

思路:

(1)布局select和input,让input覆盖select,除了select的下拉图标,以方便select选择

(2)编写JS,为select添加onchange事件,onchange时将input的value置成select选中的指

贴出代码

01

02

03

04

05

06

07

08

09

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

可输入的下拉框

    .container {position:relative;margin:10px;}

    .container .sel {width:120px;}

    .container .input {width:100px;height:20px;position:absolute;}

    

    

        选项1

        选项2

        选项3

        选项4

    

 

    var sel = document.getElementById("sel");

    var input = document.getElementById("input");

    sel.onchange = function() {

        input.value = this.value;

    }

7,中alt和tittle的区别

alt:图片显示不出来了就提示alt

title:鼠标划过图片显示的提示

8,用css、html编写一个两列布局的网页,要求右侧宽度为200px,左侧自动扩展。

01

02

03

04

05

06

07

08

09

10

11

12

13

14

15

16

双列布局,右侧定宽

    id="left">

    id="right">

9,解释document.getElementById(“ElementID”).style.fontSize=”1.5em”

em是相对长度单位,相当于当前对象内文本的字体尺寸,如果当前行内文本的字体尺寸未被指定,则相对于浏览器的默认字体尺寸。

该语句将id为ElementID的元素的字体设置为当前对象内文本的字体尺寸的1.5倍

10,Doctype? 严格模式与混杂模式-如何触发这两种模式,区分它们有何意义? 行内元素有哪些?块级元素有哪些?CSS的盒模型?

DOCTYPE是文档类型,用来说明使用的HTML或者XHTML是什么版本,其中的DTD叫文档类型定义,里面包含了文档规则,浏览器根据定义的DTD来解析页面的标识并展现出来

DOCTYPE有两种用途:一个可以进行页面的有效性验证,另一个可以区分浏览器使用严格模式还是混杂模式来解析CSS。

严格模式和混杂模式是浏览器解析CSS的两种模式,目前使用的大部分浏览器对这两种模式都支持,但是IE5只支持混杂模式。

可那个过DOCTYPE声明来判断哪种模式被触发

(1) 没有DOCTYPE声明的网页采用混杂模式解析

(2) 对使用DOCTYPE声明的网页视不同浏览器进行解析

(3) 对于浏览器不能识别的DOCTYPE声明,浏览器采用严格模式解析

(4) 在ie6下,如果在DOCTYPE声明之前有一个xml声明比如

,采用混杂模式解析,在IE7,IE8中这条规则不生效。

(5) 在ie下,如果DOCTYPE之前有任何字符,都会导致它进入混杂模式,如:

区分这两种模式可以理解浏览器解析CSS的区别,主要是在盒模式的解释上。

常见的块级元素有:DIV,FORM,TABLE,P,PRE,H1~H6,DL,OL,UL等

常见的内联元素:SPAN,A,STRONG,EM,LABEL,INPUT,SELECT,TEXTAREA,IMG,BR等

CSS盒模型用于描述为一个HTML元素形成的矩形盒子,盒模型还涉及元素的外边距,内边距,边框和内容,具体来讲最里面的内容是元素内容,直接包围元素内容的是内边距,包围内边距的是边框,包围边框的是外边距。内边距,外边距,边框默认为0。

11,CSS引入的方式有哪些? link和@import的区别?

引入css的方式有下面四种

(1) 使用style属性

(2) 使用style标签

(3) 使用link标签

(4) 使用@import引入

Link和@import区别:

(1) link属于XHTML标签,@import是CSS提供的一种方式。Link除了加载CSS外,还可以做很多事情,如定义RSS,rel连接属性等;@import只能加载CSS

(2) 加载顺序不同,当页面被加载的时候,link加载的CSS随之加载,而@import引用的CSS会等到页面完全下载完之后才会加载

(3) 兼容性差别,由于@import是CSS2.1提出的,所以老的浏览器不支持,IE系列的浏览器IE5以上才能识别,而link没有这个问题

使用DOM控制样式的差别,使用JavaScript控制DOM去改变样式的时候,只能操作link,@import不可以被DOM操作。

12,如何居中一个浮动元素?

一个浮动元素里面包含的元素可以水平居中,原理如下:

让浮动元素left相对于父元素container右移50%,浮动元素left的子元素left-child相对于left左移50%就可以实现left-child相对于container水平居中

垂直居中类似,不过操作的不是left而是top

贴出代码:

01

02

03

04

05

06

07

08

09

10

11

12

13

14

15

16

17

18

19

20

让浮动元素居中

这是一个浮动的元素

13,HTML5和CSS3的了解情况

有所了解

HTML5和CSS3分别是新推出的HTML和CSS规范,前世是XHTML2和CSS2,目前还在草案阶段,不过得到了Apple,Opera,Mozilla,Google,Microsoft不同程度的支持,也开发出了不少基于他们的应用。

HTML5相对于原来的HTML规范有一些变化:

(1)DOCTYPE更简洁

(2)新增了一些语义化标签,如article,header,footer,dialog等

(3)新增了一些高级标签,如,

CSS3相对于CSS2也新增了不少功能

(1) 选择器更加丰富

(2) 支持为元素设置阴影

(3) 无需图片能提供圆角

14,你怎么来实现下面这个设计图

(1) 切图

(2) 布局,采用两栏布局,分别左浮动

(3) 编写css代码

贴出代码:

01

02

03

04

05

06

07

08

09

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54http://www.w3.org/TR/html4/loose.dtd">

品致页面制作

   

      

         

              alt="logo"/>

         

          align="center">

            品•致

            第11期

         

          align="center">

            

         

      

      

         

                

  • 老虎伍兹为何被女人“吃掉”?
  •             

  •             

  • 你必须告诉一声的九件事
  •             

  •             

  • 男人,被时尚抛弃的一群?
  •             

  •             

  • 30天牛奶养生让你焕发青春肌肤
  •             

  •             

  • 你是否曾经关注过你的心脏?
  •             

  •          

      

      

   

15,css 中id和class如何定义,哪个定义的优先级别高?

id:#***,***为HTML中定义的id属性

class:.***,***为HTML中定义的class属性

id比class的优先级高

16,用html实现如下表格(不如嵌套实用表格)

三行三列,其中第一行第一列和第二行第一列合并; 第二行第二列和第二行第三列合并(现场画表)

使用表格嵌套,源码如下:

01

02

03

04

05

06

07

08

09

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

         1

         

               

30http://www.w3.org/TR/html4/loose.dtd">

品致页面制作

   

      

                  

                     2

                     

                  

                  

                     4

                  

               

3

         

      

      

         5

         6

         7

      

   

运行结果如下:

17,web标准网站有那些优点

(1) Web标准网站结构和布局分离,使网站的访问和维护更加容易

(2) Web标准网站结构,布局以及页面访问都标准化,使网站能在更多的web标准设备中访问,兼容性更好

(3) Web标准网站语义化更好,语义化的XHTML不仅对用户友好,对搜索引擎也友好。

以下为Web前端开发笔试题集锦之Javascript篇,移步HTML/CSS篇

1, 判断字符串是否是这样组成的,第一个必须是字母,后面可以是字母、数字、下划线,总长度为5-20

var reg = /^[a-zA-Z][a-zA-Z_0-9]{4,19}$/;

reg.test("a1a__a1a__a1a__a1a__");

2,截取字符串abcdefg的efg

var str = "abcdefg";

if (/efg/.test(str)) {

  var efg = str.substr(str.indexOf("efg"), 3);

  alert(efg);

}

3,判断一个字符串中出现次数最多的字符,统计这个次数

//将字符串的字符保存在一个hash table中,key是字符,value是这个字符出现的次数

var str = "abcdefgaddda";

var obj = {};

for (var i = 0, l = str.length; i < l; i++) {

   var key = str[i];

   if (!obj[key]) {

      obj[key] = 1;

   } else {

      obj[key]++;

   }

}

/*遍历这个hash table,获取value最大的key和value*/

var max = -1;

var max_key = "";

var key;

for (key in obj) {

if (max < obj[key]) {

      max = obj[key];

      max_key = key;

   }

}

alert("max:"+max+" max_key:"+max_key);

4,IE与FF脚本兼容性问题

(1) window.event:

表示当前的事件对象,IE有这个对象,FF没有,FF通过给事件处理函数传递事件对象

(2) 获取事件源

IE用srcElement获取事件源,而FF用target获取事件源

(3) 添加,去除事件

IE:element.attachEvent(“onclick”, function) element.detachEvent(“onclick”, function)

FF:element.addEventListener(“click”, function, true) element.removeEventListener(“click”, function, true)

(4) 获取标签的自定义属性

IE:div1.value或div1[“value”]

FF:可用div1.getAttribute(“value”)

(5) document.getElementByName()和document.all[name]

IE;document.getElementByName()和document.all[name]均不能获取div元素

FF:可以

(6) input.type的属性

IE:input.type只读

FF:input.type可读写

(7) innerText textContent outerHTML

IE:支持innerText, outerHTML

FF:支持textContent

(8) 是否可用id代替HTML元素

IE:可以用id来代替HTML元素

FF:不可以

这里只列出了常见的,还有不少,更多的介绍可以参看JavaScript在IE浏览器和Firefox浏览器中的差异总结

5,规避javascript多人开发函数重名问题

(1) 可以开发前规定命名规范,根据不同开发人员开发的功能在函数前加前缀

(2) 将每个开发人员的函数封装到类中,调用的时候就调用类的函数,即使函数重名只要类名不重复就ok

6,javascript面向对象中继承实现

javascript面向对象中的继承实现一般都使用到了构造函数和Prototype原型链,简单的代码如下:

function Animal(name) {

   this.name = name;

}

Animal.prototype.getName = function() {alert(this.name)}

function Dog() {};

Dog.prototype = new Animal("Buddy");

Dog.prototype.constructor = Dog;

var dog = new Dog();

7,FF下面实现outerHTML

FF不支持outerHTML,要实现outerHTML还需要特殊处理

思路如下:

在页面中添加一个新的元素A,克隆一份需要获取outerHTML的元素,将这个元素append到新的A中,然后获取A的innerHTML就可以了。

  

 

 

 

获取outerHMTL 

 

 

 

SPANDIV 

SPAN

P

 

 

8,编写一个方法 求一个字符串的字节长度

假设:

一个英文字符占用一个字节,一个中文字符占用两个字节

function GetBytes(str){

    var len = str.length;

    var bytes = len;

for(var i=0; i if (str.charCodeAt(i) > 255) bytes++;

    }

    return bytes;

}

alert(GetBytes("你好,as"));

9,编写一个方法 去掉一个数组的重复元素

var arr = [1 ,1 ,2, 3, 3, 2, 1];

Array.prototype.unique = function(){

    var ret = [];

    var o = {};

    var len = this.length;

for (var i=0; i        var v = this[i];

        if (!o[v]){

            o[v] = 1;

            ret.push(v);

        }

    }

    return ret;

};

alert(arr.unique());

10,写出3个使用this的典型应用

(1)在html元素事件属性中使用,如

(2)构造函数

function Animal(name, color) {

   this.name = name;

   this.color = color;

}

(3)

(4)CSS expression表达式中使用this关键字

div element

12,如何显示/隐藏一个DOM元素?

el.style.display = "";

el.style.display = "none";

el是要操作的DOM元素

13,JavaScript中如何检测一个变量是一个String类型?请写出函数实现

String类型有两种生成方式:

(1)Var str = “hello world”;

(2)Var str2 = new String(“hello world”);

function IsString(str){

    return (typeof str == "string" || str.constructor == String);

}

var str = "";

alert(IsString(1));

alert(IsString(str));

alert(IsString(new String(str)));

14,网页中实现一个计算当年还剩多少时间的倒数计时程序,要求网页上实时动态显示“××年还剩××天××时××分××秒”

倒计时

15,补充代码,鼠标单击Button1后将Button1移动到Button2的后面

16,JavaScript有哪几种数据类型

简单:Number,Boolean,String,Null,Undefined

复合:Object,Array,Function

17,下面css标签在JavaScript中调用应如何拼写,border-left-color,-moz-viewport

borderLeftColor

mozViewport

18,JavaScript中如何对一个对象进行深度clone

function cloneObject(o) {

    if(!o || 'object' !== typeof o) {

        return o;

    }

    var c = 'function' === typeof o.pop ? [] : {};

    var p, v;

    for(p in o) {

        if(o.hasOwnProperty(p)) {

            v = o[p];

            if(v && 'object' === typeof v) {

                c[p] = Ext.ux.clone(v);

            }

            else {

                c[p] = v;

            }

        }

    }

    return c;

}; 

19,如何控制alert中的换行

\\n alert(“p\\np”);

20,请实现,鼠标点击页面中的任意标签,alert该标签的名称.(注意兼容性)

 

 

 

 

鼠标点击页面中的任意标签,alert该标签的名称 

 

 

 

SPANDIV 

SPAN

P

 

 

 

21,请编写一个JavaScript函数 parseQueryString,它的用途是把URL参数解析为一个对象,如:

var url = “http://witmax.cn/index.php?key0=0&key1=1&key2=2″;

function parseQueryString(url){

   var params = {};

   var arr = url.split("?");

   if (arr.length <= 1)

      return params;

   arr = arr[1].split("&");

   for(var i=0, l=arr.length; i      var a = arr[i].split("=");

      params[a[0]] = a[1];

   }

   return params;

}

var url = "http://witmax.cn/index.php?key0=0&key1=1&key2=2";

var ps = parseQueryString(url);

alert(ps["key1"]);

22,ajax是什么? ajax的交互模型? 同步和异步的区别? 如何解决跨域问题?

Ajax是多种技术组合起来的一种浏览器和服务器交互技术,基本思想是允许一个互联网浏览器向一个远程页面/服务做异步的http调用,并且用收到的数据来更新一个当前web页面而不必刷新整个页面。该技术能够改进客户端的体验。包含的技术:

XHTML:对应W3C的XHTML规范,目前是XHTML1.0。

CSS:对应W3C的CSS规范,目前是CSS2.0

DOM:这里的DOM主要是指HTML DOM,XML DOM包括在下面的XML中

JavaScript:对应于ECMA的ECMAScript规范

XML:对应W3C的XML DOM、XSLT、XPath等等规范

XMLHttpRequest:对应WhatWG的Web Applications1.0规范(http://whatwg.org/specs/web-apps/current-work/)

AJAX交互模型

同步:脚本会停留并等待服务器发送回复然后再继续

异步:脚本允许页面继续其进程并处理可能的回复

跨域问题简单的理解就是因为JS同源策略的,a.com域名下的JS无法操作b.com或c.a.com下的对象,具体场景如下:

PS:(1)如果是端口或者协议造成的跨域问题前端是为力的

(2) 在跨域问题上,域仅仅通过URL的首部来识别而不会尝试判断相同的IP地址对应的域或者两个域是否对应一个IP

前端对于跨域的解决办法:

(1) document.domain+iframe

(2) 动态创建script标签

23,什么是闭包?下面这个ul,如何点击每一列的时候alert其index?

  • 这是第一条
  • 这是第二条
  • 这是第三条

内部函数被定义它的函数的外部区域调用的时候就产生了闭包。

(function A() {

   var index = 0;

   var ul = document.getElementById("test");

   var obj = {};

for (var i = 0, l = ul.childNodes.length; i < l; i++) {

      if (ul.childNodes[i].nodeName.toLowerCase() == "li") {

         var li = ul.childNodes[i];

         li.onclick = function() {

            index++;

            alert(index);

         }

      }

   }

})();

24,请给出异步加载js方案,不少于两种

默认情况javascript是同步加载的,也就是javascript的加载时阻塞的,后面的元素要等待javascript加载完毕后才能进行再加载,对于一些意义不是很大的javascript,如果放在页头会导致加载很慢的话,是会严重影响用户体验的。

异步加载方式:

(1) defer,只支持IE

(2) async:

(3) 创建script,插入到DOM中,加载完毕后callBack,见代码:

function loadScript(url, callback){

   var script = document.createElement("script")

   script.type = "text/javascript";

   if (script.readyState){ //IE

      script.onreadystatechange = function(){

         if (script.readyState == "loaded" ||

            script.readyState == "complete"){

            script.onreadystatechange = null;

            callback();

         }

      };

   } else { //Others: Firefox, Safari, Chrome, and Opera

      script.onload = function(){

          callback();

      };

   }

   script.src = url;

   document.body.appendChild(script);

}

25,请设计一套方案,用于确保页面中JS加载完全。

var n = document.createElement("script");

n.type = "text/javascript";

//以上省略部分代码

//ie支持script的readystatechange属性(IE support the readystatechange event for script and css nodes)

if(ua.ie){

   n.onreadystatechange = function(){

       var rs = this.readyState;

       if('loaded' === rs || 'complete'===rs){

           n.onreadystatechange = null;

           f(id,url); //回调函数

       }

};

//省略部分代码

//safari 3.x supports the load event for script nodes(DOM2)

   n.addEventListener('load',function(){

       f(id,url);

   });

//firefox and opera support onload(but not dom2 in ff) handlers for

//script nodes. opera, but no ff, support the onload event for link

//nodes.

}else{

   n.onload = function(){

       f(id,url);

   };

}

26,js中如何定义class,如何扩展prototype?

Ele.className = “***”; //***在css中定义,形式如下:.*** {…}

A.prototype.B = C;

A是某个构造函数的名字

B是这个构造函数的属性

C是想要定义的属性的值

27,如何添加html元素的事件,有几种方法.

(1) 为HTML元素的事件属性赋值

(2) 在JS中使用ele.on*** = function() {…}

(3) 使用DOM2的添加事件的方法 addEventListener或attachEvent

28,documen.write和 innerHTML的区别

document.write只能重绘整个页面

innerHTML可以重绘页面的一部分

29,多浏览器检测通过什么?

(1) navigator.userAgent

(2) 不同浏览器的特性,如addEventListener

30,js的基础对象有那些, window和document的常用的方法和属性列出来

String,Number,Boolean

Window:

方法:setInterval,setTimeout,clearInterval,clearTimeout,alert,confirm,open

属性:name,parent,screenLeft,screenTop,self,top,status

Document

方法:createElement,execCommand,getElementById,getElementsByName,getElementByTagName,write,writeln

属性:cookie,doctype,domain,documentElement,readyState,URL,

31,前端开发的优化问题

(1) 减少http请求次数:css spirit,data uri

(2) JS,CSS源码压缩

(3) 前端模板 JS+数据,减少由于HTML标签导致的带宽浪费,前端用变量保存AJAX请求结果,每次操作本地变量,不用请求,减少请求次数

(4) 用innerHTML代替DOM操作,减少DOM操作次数,优化javascript性能

(5) 用setTimeout来避免页面失去响应

(6) 用hash-table来优化查找

(7) 当需要设置的样式很多时设置className而不是直接操作style

(8) 少用全局变量

(9) 缓存DOM节点查找的结果

(10) 避免使用CSS Expression

(11) 图片预载

(12) 避免在页面的主体布局中使用table,table要等其中的内容完全下载之后才会显示出来,显示比div+css布局慢

32,如何控制网页在网络传输过程中的数据量

启用GZIP压缩

保持良好的编程习惯,避免重复的CSS,JavaScript代码,多余的HTML标签和属性

33,Flash、Ajax各自的优缺点,在使用中如何取舍?

Ajax的优势

(1) 可搜索型

(2) 开放性

(3) 费用

(4) 易用性

(5) 易于开发

Flash的优势

(1) 多媒体处理

(2) 兼容性

(3) 矢量图形 比SVG,Canvas优势大很多

(4) 客户端资源调度,比如麦克风,摄像头

文档

前端工程师笔试面试题

1,让一个input的背景颜色变成红色12,div的高宽等于浏览器可见区域的高宽,浏览器滚动,div始终覆盖浏览器的整个可见区域思路:(1)先放置一个div1,浮动:position:absolute;top:0px;left:0px;(2)再放置一个div2,浮动:position:absolute;top:0px;left:0px;width:100%;height:100%;(3)在div2中放置一个div3,令其高度超过浏览器高度,使div2产生滚动条(4)对html,body进行样式
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top