html5面试

1.选择器的权重问题

  继承的权重最小(0000)

  标签选择器的权重为(0001)

  class选择器的权重为(0010)

·  ID选择器的权重为(0100)

  内联样式表的权重为(1000)

  嵌套选择器权重为选择器权重之和。

2.e.curretnTarget和e.target的区别

  1、target发生在事件流的目标阶段,而currentTarget发生在事件流的整个阶段(捕获、目标和冒泡阶段)
  2、只有当目标流处于目标阶段的时候才相同
  3、而当事件流处于捕获和冒泡阶段时,target指向被点击的对象,而currentTarget指向当前事件活动的对象,通常是事件的祖元素。

3.验证码的作用及原理

  作用:验证码是目前大多网站所支持并使用于注册登录的。其作用是能有效防止恶意登录注册,验证码每次都不同,这就可以排除用其他病毒或者软件自动申请用户及自动登陆,有效防止这种问题。

  原理: 验证码于服务器端生成,发送给客户端,并以图像格式显示。客户端提交所显示的验证码,客户端接收并进行比较,若比对失败则不能实现登录或注册,反之成功后跳转相应界面。

4.jsonp的原理

  ajax请求受同源策略影响,不允许进行跨域请求,而script标签src属性中的链接却可以访问跨域的js脚本,利用这个特性,服务端不再返回JSON格式的数据,而是返回一段调用某个函数的js代码,在src中进行了调用,这样实现了跨域。

5.浏览器阻止默认行为的方法和阻止事件冒泡的方法

  浏览器阻止默认行为的方法:preventDefault方法就是可以阻止它的默认行为

  阻止事件冒泡的方法:1)return false

            2)event.preventDefault()

            3)event.stopPropagation()

6.观察者模式

                观察者模式又叫发布-订阅模式,它定义了对象间的一种一对多的关系,让多个观察者对象同时监听某一个主题对象,当一个对象发生改变时,所有依赖于它的对象都将得到通知。
7.什么是命名空间以及命名空间的作用

  命名空间:表示标识符的可见范围。一个标识符可在多个命名空间中定义,它在不同命名空间中的含义是互不相干的。这样,在一个新的命名空间中可定义任何标识符,它们不会与任何已有的标识符发生冲突,因为已有的定义都处于其它命名空间中。

  作用:当一个工程很大时,既有自身的代码,又有引用的外部库,当自身库和外部库中的对象重名时,没有命名空间将无法区分他们。

8.form中label标签的作用

  用户选择该标签时,浏览器就会自动将焦点转到和标签相关的表单控件上。

9.html中的tabIndex属性

  可以设置键盘中的TAB键在控件中的移动顺序,即焦点的顺序。 

10.页面上下载客户端 有安卓和ios两种,怎么判断

  useragent

原文地址:https://www.cnblogs.com/weiyuxi/p/7795425.html