jquery面试题.doc_第1页
jquery面试题.doc_第2页
jquery面试题.doc_第3页
jquery面试题.doc_第4页
jquery面试题.doc_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

jQuery面试题答案问答题:问题:jQuery的美元符号$有什么作用?回答:其实美元符号$只是”jQuery”的别名,它是jQuery的选择器,如下代码:?123$(document).ready(function();当然你也可以用jQuery来代替$,如下代码:?123jQuery(document).ready(function();jQuery中就是通过这个美元符号来实现各种灵活的DOM元素选择的,例如$(“#main”)即选中id为main的元素。问题:body中的onload()函数和jQuery中的document.ready()有什么区别?回答:onload()和document.ready()的区别有以下两点:1、我们可以在页面中使用多个document.ready(),但只能使用一次onload()。2、document.ready()函数在页面DOM元素加载完以后就会被调用,而onload()函数则要在所有的关联资源(包括图像、音频)加载完毕后才会调用。问题:jQuery中有哪几种类型的选择器?回答:从我自己的角度来讲,可以有3种类型的选择器,如下:1、基本选择器:直接根据id、css类名、元素名返回匹配的dom元素。2、层次选择器:也叫做路径选择器,可以根据路径层次来选择相应的DOM元素。3、过滤选择器:在前面的基础上过滤相关条件,得到匹配的dom元素。问题:请使用jQuery将页面上的所有元素边框设置为2px宽的虚线?回答:这正是jQuery选择器上场的时候了,代码如下:?12345$(*).css(border, 2px dotted red); 问题:当CDN上的jQuery文件不可用时,该怎么办?回答:为了节省带宽和脚本引用的稳定性,我们会使用CDN上的jQuery文件,例如google的jquery cdn服务。但是如果这些CDN上的jQuery服务不可用,我们还可以通过以下代码来切换到本地服务器的jQuery版本:/问题:如何使用jQuery实现点击按钮弹出一个对话框?回答:代码如下:HTML:?1jQuery:?1234567 $(document).ready(function () $(#Button1).click(function () alert($(#inputField).attr(value); ); );问题:jQuery中的Delegate()函数有什么作用?回答:delegate()会在以下两个情况下使用到:1、如果你有一个父元素,需要给其下的子元素添加事件,这时你可以使用delegate()了,代码如下:?12345$(ul).delegate(li, click, function()$(this).hide(););2、当元素在当前页面中不可用时,可以使用delegate()问题:怎样用jQuery编码和解码URL?回答:在jQuery中,我们可以使用以下方法实现URL的编码和解码。?1encodeURIComponent(url) and decodeURIComponent(url)问题:如何用jQuery禁用浏览器的前进后退按钮?回答:实现代码如下:$(document).ready(function() window.history.forward(1);/ORwindow.history.forward(-1););JavaScript部分要点: 数据类型、面向对象、继承、闭包、插件、作用域、跨域、原型链、模块化、自定义事件、异步装载回调、模板引擎、Nodejs等。js的几种数据类型:number,string,boolean,object,undefinedjs的常见内置对象类:Date,Array,Math、Number、Boolean、String、Array、RegExp、Function.通常可以做一些小练习来判断TA的水平,js 虽然很灵活,但是具体的代码和实现方式能体现出一个人的全局观,随着代码规模的增长,复杂度增加,如何合理划分模块实现功能和接口的能力比较重要。(下面例题)1, 2, 3.map(parseInt)typeof null, null instanceof Object 3,2,1.reduce(Math.pow), .reduce(Math.pow) var val = smtg; console.log(Value is + (val = smtg) ? Something : Nothing);1.创建一个对象 function Person(name, age) = name; this.age = age; this.sing = function() alert() 2.谈谈This对象的理解。this是js的一个关键字,随着函数使用场合不同,this的值会发生变化。但是总有一个原则,那就是this指的是调用函数的那个对象。this一般情况下:是全局对象Global。 作为方法调用,那么this就是指这个对象3.事件、IE与火狐的事件机制有什么区别? 如何阻止冒泡? 1. 我们在网页中的某个操作(有的操作对应多个事件)。例如:当我们点击一个按钮就会产生一个事件。是可以被 JavaScript 侦测到的行为。 2. 事件处理机制:IE是事件冒泡、火狐是 事件捕获; 3. ev.stopPropagation();4.什么是闭包(closure),为什么要用?待完善执行say667()后,say667()闭包内部变量会存在,而闭包内部函数的内部变量不会存在.使得Javascript的垃圾回收机制GC不会收回say667()所占用的资源,因为say667()的内部函数的执行需要依赖say667()中的变量。这是对闭包作用的非常直白的描述. function say667() / Local variable that ends up within closure var num = 666; var sayAlert = function() alert(num); num+; return sayAlert; var sayAlert = say667(); sayAlert()/执行结果应该弹出的667 5.如何判断一个对象是否属于某个类?使用instanceof (待完善) if(a instanceof Person) alert(yes); 6.new操作符具体干了什么呢? 1、创建一个空对象,并且 this 变量引用该对象,同时还继承了该函数的原型。 2、属性和方法被加入到 this 引用的对象中。 3、新创建的对象由 this 所引用,并且最后隐式的返回 this 。 var obj = ; obj._proto_ = Btotype; Base.call(obj); 7.JSON 的了解JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。它是基于JavaScript的一个子集。数据格式简单, 易于读写, 占用带宽小age:12, name:back8.js延迟加载的方式有哪些 defer和async、动态创建DOM方式(用得最多)、按需异步载入js9.ajax 是什么?ajax 的交互模型?同步和异步的区别?如何解决跨域问题?待完善 1. 通过异步模式,提升了用户体验 2. 优化了浏览器和服务器之间的传输,减少不必要的数据往返,减少了带宽占用 3. Ajax在客户端运行,承担了一部分本来由服务器承担的工作,减少了大用户量下的服务器负载。 2. Ajax的最大的特点是什么。 Ajax可以实现动态不刷新(局部刷新) readyState属性 状态 有5个可取值: 0=未初始化 ,1=正在加载 2=以加载,3=交互中,4=完成ajax的缺点 1、ajax不支持浏览器back按钮。 2、安全问题 AJAX暴露了与服务器交互的细节。 3、对搜索引擎的支持比较弱。 4、破坏了程序的异常机制。 5、不容易调试。 跨域: jsonp、 iframe、、window.postMessage、服务器上设置代理页面10.模块化怎么做?立即执行函数,不暴露私有成员var module1 = (function()var _count = 0;var m1 = function()/.;var m2 = function()/.;return m1 : m1,m2 : m2;)(); 11.对Node的优点和缺点提出了自己的看法: *(优点)因为Node是基于事件驱动和无阻塞的,所以非常适合处理并发请求, 因此构建在Node上的代理服务器相比其他技术实现(如Ruby)的服务器表现要好得多。 此外,与Node代理服务器交互的客户端代码是由javascript语言编写的, 因此客户端和服务器端都用同一种语言编写,这是非常美妙的事情。 *(缺点)Node是一个相对新的开源项目,所以不太稳定,它总是一直在变, 而且缺少足够多的第三方库支持。看起来,就像是Ruby/Rails当年的样子。12.异步加载的方式 (1) defer,只支持IE (2) async: (3) 创建script,插入到DOM中,加载完毕后callBack documen.write和 innerHTML的区别 document.write只能重绘整个页面 innerHTML可以重绘页面的一部分13.告诉我答案是多少?(function(x) delete x; alert(x);)(1+5);函数参数无法delete删除,delete只能删除通过for in访问的属性。当然,删除失败也不会报错,所以代码运行会弹出“1”。14.JS中的call()和apply()方法的区别?例子中用 add 来替换 sub,add.call(sub,3,1) = add(3,1) ,所以运行结果为:alert(4);注意:js 中的函数其实是对象,函数名是对 Function 对象的引用。function add(a,b) alert(a+b);function sub(a,b) alert(a-b);add.call(sub,3,1); 15.Jquery与jQuery UI 有啥区别? *jQuery是一个js库,主要提供的功能是选择器,属性修改和事件绑定等等。 *jQuery UI则是在jQuery的基础上,利用jQuery的扩展性,设计的插件。 提供了一些常用的界面元素,诸如对话框、拖动行为、改变大小行为等等16.jquery 中如何将数组转化为json字符串,然后再转化回来?jQuery中没有提供这个功能,所以你需要先编写两个jQuery的扩展: $.fn.stringifyArray = function(array) return JSON.stringify(array) $.fn.parseArray = function(array) return JSON.parse(array) 然后调用: $().stringifyArray(array)17.JavaScript中的作用域与变量声明提升?一、Jquery测试题下面哪种不是jquery的选择器?(单选)A、基本选择器 B、后代选择器 C、类选择器 D、进一步选择器考点:jquery的选择器 (C)当DOM加载完成后要执行的函数,下面哪个是正确的?(单选)jQuery(expression, context) B、jQuery(html, ownerDocument) C、jQuery(callback) D、jQuery(elements)考点:jquery的核心函数 (C)下面哪一个是用来追加到指定元素的末尾的?(单选)A、insertAfter() B、append() C、appendTo() D、after()考点:jquery的核心函数 (C)下面哪一个不是jquery对象访问的方法?(单选)A、each(callback) B、size() C、index(subject) D、index()考点: jquery的核心函数之对象访问 (D)jquery访问对象中的size()方法的返回值和jQuery对象的_属性一样.考点:jquery的核心函数之对象访问 (length)jquery中$(this).get(0)的写法和_是等价的。考点:jquery的核心函数之对象访问 ($(this)0)7. 有这样一个表单元素,想要找到这个hidden元素,下面哪个是正确的?(单选)A、visible B、hidden C、visible() D、hidden()考点:jquery的选择器 (B)如果需要匹配包含文本的元素,用下面哪种来实现?(单选)A、text() B、contains() C、input() D、attr(name)考点:jquery的选择器 (B)现有一个表格,如果想要匹配所有行数为偶数的,用_实现,奇数的用_实现。考点:jquery的选择器 (even,odd)如果想要找到一个表格的指定行数的元素,用下面哪个方法可以快速找到指定元素?(单选)A、text() B、get() C、eq() D、contents()考点:jquery的选择器 (C)在一个表单里,想要找到指定元素的第一个元素用_实现,那么第二个元素用_实现。考点:jquery的选择器 (first,eq(1))下面哪种不属于jquery的筛选?(单选)A、过滤 B、自动 C、查找 D、串联考点:jquery的筛选 (B)下面哪几种是属于jquery文档处理的? (多选)A、包裹 B、替换 C、删除 D、内部和外部插入考点:jquery的文档处理 (ABD)如果想在一个指定的元素后添加内容,下面哪个是实现该功能的?(单选)A、append(content) B、appendTo(content) C、insertAfter(content) D、after(content)考点:jquery的文档处理 (D)在jquery中,用一个表达式来检查当前选择的元素集合,使用_来实现,如果这个表达式失效,则返回_值。考点:jquery的筛选 (is(expr),false)在jquey中,如果想要从DOM中删除所有匹配的元素,下面哪一个是正确的?(单选)A、delete() B、empty() C、remove() D、removeAll()考点:jquery的文档处理 (C)在jquery中,想要给第一个指定的元素添加样式,下面哪一个是正确的?(单选)A、first B、eq(1) C、css(name) D、css(name,value)考点: jquery的css处理 (C)在编写页面的时候,如果想要获取指定元素在当前窗口的相对偏移,用_来实现,该方法的返回值有两个属性,分别是_和_。考点:jquery的css处理 (offset,top,left)在jquery中,如果想要获取当前窗口的宽度值,下面哪个是实现该功能的? (单选)A、width() B、width(val) C、width D、innerWidth()考点:jquery的css处理 (A)在一个表单中,如果将所有的div元素都设置为绿色,实现功能是_。考点:jquery的css处理 ($(“div”).css(“color”,”green”)为每一个指定元素的指定事件(像click)绑定一个事件处理器函数,下面哪个是用来实现该功能的? (单选)A、trigger (type) B、bind(type) C、one(type) D、bind考点:jquery的事件操作 (B)在jquery中,鼠标移动到一个指定的元素上,会触发指定的一个方法,实现该操作的是_。考点:jquery的事件操作 (hover(over,out)下面哪几个不是属于jquery的事件处理? (多选)A、bind(type) B、click() C、change() D、one(type)考点:jquery的事件处理 (BC)在一个表单中,如果想要给输入框添加一个输入验证,可以用下面的哪个事件实现? (单选)A、hover(over ,out) B、keypress(fn) C、change() D、change(fn)考点:jquery的事件处理 (D)当一个文本框中的内容被选中时,想要执行指定的方法时,可以使用下面哪个事件来实现?(单选)A、click(fn) B、change(fn) C、select(fn) D、bind(fn)考点:jquery的事件处理 (C)在jquery中,想让一个元素隐藏,用_实现,显示隐藏的元素用_实现。考点:jquery的页面效果 (hide(),show())在一个表单中,用600毫秒缓慢的将段落滑上,用_来实现。考点:jquery的页面效果 ($(“p”).slideUp(“slow”))在jquery中,如果想要自定义一个动画,用_函数来实现。考点:jquery的页面效果 (animate(params, options)在jquery中想要实现通过远程http get请求载入信息功能的是下面的哪一下事件? (单选)A、$.ajax() B、load(url) C、$.get(url) D、$. getScript(url)考点:jquery的ajax (C)下面不属于ajax事件的是? (单选)A、ajaxComplete(callback) B、ajaxSuccess(callback) C、$.post(url) D、ajaxSend(callback)考点:jquery的ajax (C)彻底将jQuery变量还原,可以使用_方法实现。考点:jquery的多库共存 ($.noConflict(extreme)上机题:用jquery 来实现动态添加和删除表格行在一个表单中,查找所有选中的input元素,可以用jquery中的_来实现。考点:jquery的选择器(:not())下面哪几种是jquery中表单的对象属性?(多选)A、:checked B、: enabled C、:hidden D、:selected E、:file F、: disabled考点:jquery的选择器(ABDF)在jquery中如果将一个“名/值”形式的对象设置为所有指定元素的属性,可以用_实现。考点:jquery选择器之属性 (attr(pro))在jquery中指定一个类,如果存在就执行删除功能,如果不存在就执行添加功能,下面哪一个是可以直接完成该功能的?(单选)A、removeClass() B、deleteClass() C、toggleClass(class) D、addClass()考点:jquery的属性 (C)在jquery中想要找到所有元素的同辈元素,下面哪一个是可以实现的?(单选)A、eq(index) B、find(expr) C、siblings(expr) D、next()考点:jquery的筛选 (C)二、css测试题css的语法由_、_、_三部分组成。考点:css的语法 (选择器、属性和值)下面哪一个不是检索一个对象的定位方式的属性? (单选)A、static B、absolute C、fixed D、top考点:css的定位 (D)下面哪个是display布局中用来设置对象以块显示,并添加新行的? (单选)A、inline B、none C、block D、compact考点:css的布局 (C)设置边框的边框样式用_实现,设置边框的颜色用_实现。考点:css的边框 (border-style,border-color)设置一个div的最小宽度为100像素,最大高度为50像素,实现这两个设置的方法是_、_。考点:css的尺寸 (min-width:100px; min-height:50px;)为一个图片设置成背景图像后,设置背景图像在纵向和横向上平铺,下面哪个是实现该功能的? (单选)A、no-repeat B、repeat C、repeat-x D、repeat-y考点:css的背景background (repeat)想要设置一个对象外的线条轮廓的样式为虚线边框,用_实现该功能。考点:css的轮廓outline (outline-style: dashed)在css中,如果想要阻止计数器增加的,用_来实现。考点:css的内容content (counter-increment : none)在编写css样式的时候,如果想要设置标记容器和主容器之间的补白,用_来表示。考点:css的列表 (marker-offset)如果想设置表格的行与单元格的边框合并在一起,可以用_来实现。考点:css的表格 (border-collapse:collapse)如果想设置一个对象内文本的流动和方向,用_标签来实现,该标签有两个值,分别是_、

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论