前端问题1

1.下列哪个样式定义后,内联(非块状)元素可以定义宽度和高度

  • A.display:inline
  • B.display:none
  • C.display:block
  • D.display:inherit
display属性作用
blockCSS1 块对象的默认值。将对象强制作为块对象呈递,为对象之后添加新行 可以定义高度和宽度
noneCSS1 隐藏对象。与 visibility 属性的hidden值不同,其不为被隐藏的对象保留其物理空间
inlineCSS1 内联对象的默认值。将对象强制作为内联对象呈递,从对象中删除行
inline-blockIE5.5 将对象呈递为内联对象,但是对象的内容作为块对象呈递。旁边的内联对象会被呈递在同一行内 inherit: 看display默认是不具备继承性的,使用inherit可以让其继承父对象的display属性。

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

  • 参数是scroll时候,必会出现滚动条。
  • 参数是auto时候,子元素内容大于父元素时出现滚动条。
  • 参数是visible时候,溢出的内容出现在父元素之外。
  • 参数是hidden时候,溢出隐藏。

3.新窗口打开网页,用到以下哪个值()。

描述
_blank在新窗口中打开被链接文档。
_self默认。在相同的框架中打开被链接文档。
_parent在父框架集中打开被链接文档。
_top在整个窗口中打开被链接文档。
framename在指定的框架中打开被链接文档。

4.flash和js通过什么类如何交互?

Flash提供了ExternalInterface接口与JavaScript通信
两个方法:call和addCallback
作用:call让Flash调用js里的方法,addCallback是用来注册flash函数让js调用。

5.元素的alt和title有什么异同,选出正确的说法?

同时设置时,alt是在图片未加载完成的时候做完图片的替代文字线性,title是图片的解释文字
图片加载完成后是看不到alt的

6.下面有关html5标签说法错误的有?

  • <audio> 标签定义声音,比如音乐或其他音频流
  • <canvas> 比如来自一个外部的新闻提供者的一篇新的文章,或者来自 blog 的文本,或者是来自论坛的文本。亦或是来自其他外部源内容
  • <menu> 标签定义菜单列表。当希望列出表单控件时使用该标签
  • <command> 标签定义命令按钮,比如单选按钮、复选框或按钮

<audio> 标签定义声音,比如音乐或其他音频流。 A正确。
<canvas> 标签定义图形,比如图表和其他图像。 标签只是图形容器,您必须使用脚本来绘制图形。 B错误,<article>标签定义外部的内容。比如来自一个外部的新闻提供者的一篇新的文章,或者来自 blog 的文本,或者是来自论坛的文本。亦或是来自其他外部源内容。
<menu> 标签定义命令的列表或菜单。<menu> 标签用于上下文菜单、工具栏以及用于列出表单控件和命令。 C正确
command 元素表示用户能够调用的命令。 标签可以定义命令按钮,比如单选按钮、复选框或按钮。只有当 command 元素位于 menu 元素内时,该元素才是可见的。否则不会显示这个元素,但是可以用它规定键盘快捷键。 D正确。

7.下面有关浏览器中使用js跨域获取数据的描述,说法错误的是?

  • 域名、端口相同,协议不同,属于相同的域
  • js可以使用jsonp进行跨域
  • 通过修改document.domain来跨子域
  • 使用window.name来进行跨域

只要 协议 、 域名 、 端口 有任何一个 不同, 都被当作是 不同 的域。

8.下面这个JS程序的输出是什么:

function Foo() {
    var i = 0;
    return function() {
        console.log(i++);
    }
}
 
var f1 = Foo(),
    f2 = Foo();
f1();
f1();
f2();

0 1 0
(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;

9.下面符合一个有效的javascript变量定义规则的是?

第一个字符必须是一个字母、下划线(_)或一个美元符号($);其他字符可以是字母、下划线、美元符号或数字。

10.apply方法和call方法

call()方法和apply()方法的作用相同,他们的区别在于接收参数的方式不同。对于call(),第一个参数是this值没有变化,变化的是其余参数都直接传递给函数。(在使用call()方法时,传递给函数的参数必须逐个列举出来。使用apply()时,传递给函数的是参数数组)如下代码做出解释:

function add(c, d){
return this.a + this.b + c + d;
}
var o = {a:1, b:3};
add.call(o, 5, 7); // 1 + 3 + 5 + 7 = 16
add.apply(o, [10, 20]); // 1 + 3 + 10 + 20 = 34

11.下述有关border:none以及border:0的区别,描述错误的是?

  • border:none表示边框样式无
  • border:0表示边框宽度为0
  • 当定义了border:none,即隐藏了边框的显示,实际就是边框宽度为0
  • 当定义边框时,仅设置边框宽度也可以达到显示的效果

C:当定义border:none时,表示无边框样式,浏览器并不会对边框进行渲染,也就没有实际的宽度;
D:定义边框时,除了设置宽度外,还必须设置边框的样式才能显示出来。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值