02【前端笔试】

02 【前端笔试】

1,css属性overflow属性

定义溢出元素内容区的内容会如何处理。如果值为 scroll,不论是否需要,用户代理都会提供一种滚动机制。

【解析】

  • 参数是scroll时候,必会出现滚动条。

  • 参数是auto时候,子元素内容大于父元素时出现滚动条。

  • 参数是visible时候,溢出的内容出现在父元素之外。

  • 参数是hidden时候,溢出隐藏。

2,flash和js通过什么类如何交互?

【解析】

Flash提供了ExternalInterface接口与JavaScript通信

两个方法:call和addCallback

作用:call让Flash调用js里的方法,addCallback是用来注册flash函数让js调用。

  • ExternalInterface.addCallback("在js里可调用的flash方法名",flash内方法) //在flash中通过这个方法公开 在js中可调用的flash内的方法;

  • ExternalInterface.call("js方法",传给js的参数) //在flash里调用js里的方法

3,用js让一个input的背景颜色变成红色?

【解析】

思路:

  • 获取该元素:document.getElementById()/document.getElementsByTagName()

  • 通过该元素拥有的属性和方法来改变元素的样式信:style,className 使用style接口一次只能改变一个样式,而使用className则可以同时改变多个样式,当然前提是已经用css定义该类名的相关样式。

  • backgroundColor? background-color?

  • 在使用点运算符时,浏览器看到“-”就没法正确解析了,在那种情况下,只能将该变量使用驼峰命名法来表示。

  • 而使用方括号表示法,"-"被理解为字符串中的内容,该字符串能被正确解析。 eg: inputElement.style.backgroundColor = 'red'; // 这是没问题的

  • inputElement.style.background-color = 'red'; // 这是错的,浏览器看不懂啊...

  • inputElement.style["background-color"] = 'red'; // 这也是可以的

表示红色有若干种方法:

  • 颜色名:red

  • 百分数:rgb(100%, 0%, 0%)

  • 数值:rgb(255, 0, 0)

  • 十六进制:#FF0000

  • 简写的十六进制:#F00

4,html5标签?

<canvas> 标签定义图形,比如图表和其他图像。<canvas> 标签只是图形容器,您必须使用脚本来绘制图形。

<article>标签定义外部的内容。比如来自一个外部的新闻提供者的一篇新的文章,或者来自 blog 的文本,或者是来自论坛的文本。亦或是来自其他外部源内容。

<menu> 标签定义命令的列表或菜单。<menu> 标签用于上下文菜单、工具栏以及用于列出表单控件和命令。 

command 元素表示用户能够调用的命令。<command> 标签可以定义命令按钮,比如单选按钮、复选框或按钮。只有当 command 元素位于 menu 元素内时,该元素才是可见的。否则不会显示这个元素,但是可以用它规定键盘快捷键。

5,css属性position的属性值的描述

static、absolute、fixed、relative。

position:static 无定位

position:absolute 绝对定位 元素框从文档流完全删除,

position:fixed 相对于窗口的固定定位

position:relative 相对定位 元素框偏移某个距离。元素仍保持其未定位前的形状,它原本所占的空间仍保留。

6,下面程序 输出什么?

(1)Function是引用类型:保存在堆中,变量f1,f2是保存在栈中;

(2)闭包:一个函数(产生新的作用域)定义的局部变量、子函数的作用域在函数内, 但是一旦离开了这个函数,局部变量就无法访问,所有通过返回子函数到一个变量f1的方法,让  f1指向堆中的函数作用域,这样可以使用局部变量i.

  (3)   过程:

   第一次f1()  : f1=Foo()中,先执行Foo(): i = 0,return值返回给f1

 (f1指向子函数   f1()=function(){.....},因为子函数没有 定义i,所以向上找到父函数定义的 i:  )并执行子函数 输出i=0,再自加 i =1(覆盖了父函数Foo 的 i值);

  第二次f1() : 执行的是子函数 Function(){  ..},输出的是父函数 的 i=1,再自加 i =2;

  第一次f2():同第一次f1(),不同的是 f2指向堆中一个新的对象 function(){ ...},所有此i非彼i,输出i=0;如果再次f2(),那么和第二次f1(),一样输出i=1; 

7,值传递:

把一个值类型(也叫基本类型)传递给另一个变量时,其实是分配了一块新的存储空间,在内部改变这个值时,其实在函数外部对这个值没有影响

8,NaN,即非数值(Not a Number)如果不是数字,才返回true

eval:返回字符串表达式中的值

unEscape:返回字符串ASCI码

escape:返回字符的编码

parseFloat:返回实数

8,有关JavaScript中 call和apply的描述

相同点:两个方法产生的 作用是完全一样的

不同点:方法传递的参数不同

对于call(),第一个参数是运行函数的作用域,其余参数都直接传递给函数即传递给函数的参数必须逐个列举出来。

对于apply(),第一个参数是 运行函数的作用域 ,另一个参数是参数数组,可以是Array实例或arguments对象。

9,CSS Sprites

1).简介

CSS Sprites在国内很多人叫css精灵,是一种网页图片应用处理方式。它允许将一个页面涉及到的所有零星图片都包含到一张大图中, 利用CSS的“background-image”,“background- repeat”,“background-position”的组合进行背景定位, 访问页面时避免图片载入缓慢的现象。

2).优点

(1)CSS Sprites能很好地减少网页的http请求,从而大大的提高页面的性能,这是CSS Sprites最大的优点,也是其被广泛传播和应用的主要原因;

(2)CSS Sprites能减少图片的字节;

(3)CSS Sprites解决了网页设计师在图片命名上的困扰,只需对一张集合的图片命名,不需要对每一个小图片进行命名,从而提高了网页制作效率。

(4)CSS Sprites只需要修改一张或少张图片的颜色或样式来改变整个网页的风格。

3).缺点

(1)图片合并麻烦:图片合并时,需要把多张图片有序的合理的合并成一张图片,并留好足够的空间防止版块出现不必要的背景。

(2)图片适应性差:在高分辨的屏幕下自适应页面,若图片不够宽会出现背景断裂。

(3)图片定位繁琐:开发时需要通过工具测量计算每个背景单元的精确位置。

(4)可维护性差:页面背景需要少许改动,可能要修改部分或整张已合并的图片,进而要改动css。在避免改动图片的前提下,又只能(最好)往下追加图片,但这样增加了图片字节。

12,浏览器内核

1)Trident: IE 以Trident 作为内核引擎;

2)  Gecko: Firefox 是基于 Gecko 开发;

3)WebKit: Safari, Google Chrome,傲游3,猎豹浏览器,百度浏览器 opera浏览器;

4)Presto: Opera的内核,但由于市场选择问题,主要应用在手机平台--Opera mini

注:2013年2月Opera宣布转向WebKit引擎

注:2013年4月Opera宣布放弃WEBKIT,跟随GOOGLE的新开发的blink引擎

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值