JQuery面试题1

1.说下JQuery里面的选择器及其用法
  ID选择器,元素选择器,属性选择器,
2.JQuery中经常使用的方法 ?css

方法html

描述web

hide()ajax

隐藏被选元素数据库

show()json

显示被选元素浏览器

toggle()缓存

切换(在隐藏和与显示之间)被选元素服务器

html(content)app

改变被选元素的(内部)HTML

append(content)

向被选元素的(内部)追加内容

css(name,value)

为匹配元素设置样式属性的值

load(url,data,callback)

把远程数据加载到被选的元素中

3.简单的阐述 JS,JQuery 。 
Javascript 是一种由Netscape的LiveScript 发展而来的原型化继承的基于对象的动态类型的区分大小写的客户端脚本语言,主要目的是为了解决服务端语言,好比Perl,遗留的速度问题,为客户端提供更流畅的浏览效果。 
JQuery 是继prototype以后又一个优秀的Javascript框架,它是轻量级的JS库。它的核心理念就是writer less, do more 。 
4.简单介绍JQuery的优点。

  1. 开源的、免费的
  2. 轻量级的很是灵巧
  3. 拥有强大的选择器
  4. 出色的DOM操做的封装
  5. 可靠的事件处理机制
  6. 完善的AJAX
  7. 出色的浏览器兼容性
  8. 链式操做方式
  9. 隐式迭代
  10. 行为层与结构层的分离
  11. 丰富的插件支持
  12. 完善的文档说明


5.AJAX执行流程是什么 ? 
1.经过JS建立浏览器对象XMLHttpRequest,浏览器分为IE和非IE.
2.设置回调函数 onreadystatechange 
3.客户端和服务器创建链接,经过open("GET/POST",url,ture/false) 打开请求
4.经过send()发送请求
5.服务器调用回调函数,当状态为4则表示发送请求成功
6.处理响应数据:
1)responseText:做为文本串返回
2)responseXML:做为Xml文件返回 
6.你每次的AJAX的请求都访问数据库吗?有什么坏处? 
      AJAX的一大特色就是我须要这个数据(访问数据库)的时候才给我,异步提交,就是每次提交服务器,特别是跟服务器要数据访问数据库的时候,要先链接数据库再SQL查询处理,再返回到浏览器,这个时候当不少人都访问的时候,就会影响服务器的性能,影响响应的时间。关键要看是否访问频繁,若是很频繁,而且数据不常常变化,那么就能够访问数据库
7.若是不用AJAX怎么实现局部刷新? 
1 用JQuery 
  load( url, [data], [callback] ) :载入远程 HTML 文件代码并插入至 DOM 中。
  url (String) : 请求的HTML页的URL地址。
  data (Map) : (可选参数) 发送至服务器的 key/value 数据。
  callback (Callback) : (可选参数) 请求完成时(不须要是success的)的回调函数。
   这个方法默认使用 GET 方式来传递的,若是[data]参数有传递数据进去,就会自动转换为POST方式的。
 2 也能够用iframe
这里将显示结果。 
8.AJAX有哪些状态 ?

状态

描述

0

请求未初始化(在调用 open() 以前)

1

请求已提出(调用 send() 以前)

2

请求已发送(这里一般能够从响应获得内容头部)

3

请求处理中(响应中一般有部分数据可用,可是服务器尚未完成响应)

4

请求已完成(能够访问服务器响应并使用它)


9.JQuery中 假设表单域没有id,name 你是如何获得第二个表单的元素 ? 
    能够用选择器里面的eq(1)加上别的选择器判断 
10.JQuery的事件 ?
    jQuery 事件处理方法是 jQuery 中的核心函数。
      事件处理程序指的是当 HTML 中发生某些事件时所调用的方法。术语由事件"触发"(或"激发")常常会被使用。

事件

描述

$(doncument).ready(function)

将函数绑定到文档的就绪事件(当文档完成加载时)

$(selector).clik(function)

触发或将函数绑定到被选元素的点击事件

$(selector).dblclick

触发或将函数绑定到被选元素的双击事件

$(selector).focus(function)

触发或将函数绑定到被选元素的得到焦点事件

$(selector).mouseover(function)

触发或将函数绑定到被选元素的鼠标悬停事件


11.js里只容许一个onLoad(),在JQuery里怎么弄两个? 
window.onload = function(){
alert("text1");
}; 
window.onload = function(){
alert("text2");
}; 
结果只输出第二个 , 能同时编写多个 。 
12.AJAX的同步与异步 。
    举个例子:好比你去图书馆借某种书,惋惜图书馆此书被借完。这时能够采用两种作法。
    第一种作法:在图书馆一直等待,直到有人还书,而后再去吃饭睡觉。
   第二种作法:直接跟图书馆管理员约定,如果有人还书,直接通知你。你则该忙什么忙什么。到时候会通知你。
   而第一种作法就是同步的表现,必须等待别人还书(等待服务器返回信息)才进行其余事情,至死方休。
   而第二种作法就是异步的表现,不耽误时间,合理利用时间高效率作事。
   Ajax用异步传输的好处是提升效率, 减小用户等待时间, 提升用户体验度. 
13.AJAX的回调函数 。 
       回调函数不是由该函数的实现方直接调用,而是在特定的事件或条件发生时由服务器执行完成后调用的,用于对该事件或条件进行响应。 
14.JQuery是怎么用的 ?主要用到了什么? 
    首先要导入JQuery的包文件(有Min版和未压缩版),而后在JSP中引入包,接下来再引入本身的JS。 
    主要用到了选择器和事件 和AJAX。 
 15.DWR是什么 ? 
            DWR(Direct Web Remoting)是一个用于改善web页面与Java类交互的远程服务器端Ajax开源框架,能够帮助开发人员开发包含AJAX技术的网站。它能够容许在浏览器里的代码使用运行在WEB服务器上的JAVA函数,就像它就在浏览器里同样。能够简单说是Java实现的AJAX框架 
16.JQuery中背景颜色你是怎么设置的 ? 
      $(document.body).css( "background", "black" );
17.AJAX提交数据的时候使用同步仍是异步? 
    异步。 
18.你懂AJAX的原理和它的框架吗 ? 
     Ajax的原理简单来讲经过XmlHttpRequest对象来向服务器发异步请求,从服务器得到数据,而后用Javascript来操做DOM从而更新页面 。 
    AJAX框架主要有ajax.dll,ajaxpro.dll,magicajax.dll 以及微软的atlas框架 
19.JQuery隐藏一个DIV使用什么方法?,调用什么方法拿到父无素? 
   隐藏一个DIV的方法有:
   hide() 隐藏显示的元素 ; 若是选择的元素是隐藏的,这个方法将不会发生任何改变。
     toggle() 若是元素是可见的,切换为隐藏的;若是元素是隐藏的,切换为可见的。 
拿到父元素的方法有:
parent()取得一个包含着全部匹配元素的惟一父元素的元素集合。
   parents()取得一个包含着全部匹配元素的祖先元素的元素集合(不包含根元素)。 


20.作一个鼠标点击DIV动画,变大变小的那种,说一下思路。
<td id="test"></td> 用JQuery代码替换文字和文字的颜色 。
      文字的替换能够JQuery对象的text(),文字的颜色attr,若是是css,咱们css()

21.AJAX()怎么返回后台的值。配置及做用。
    在回调函数里面返回后台的值,能够用xmlHttpRequest的responseText 或responseXml得到 

22.JQuery如何调用事件,如何获取页面元素,如何抓去样式 ? 
调用事件:最经常使用的是为元素添加onclick元素属性的方式来添加事件 ,使用各类选择器来获取元素,使用css()来抓取样式
23.JQuery怎样获取json的数据? 
   a. 使用了require JS 框架
   b. 用Jquery的两种方法获取后台数据
  1)ajax 方法,传回的都是json数据 
   2)getJSON, 直接封装了一些参数{command : GetRegsiterJsonData}
24.AJAX发送的请求的协议是什么 ?
    HTTP
25.JQuery的clone方法参数加true和不加true的区别 ?
      clone(true)方是复制一个元素及其全部事件,
    clone()方法是复制一个元素,不包含其全部事件 
26.在页面动态显示一个时间。
 
27.AJAX的缓存问题怎么解决? 
方法一: 
在ajax发送请求前加上 :
     xmlHTTP.setRequestHeader("If-Modified-Since","0"); 
方法二:
服务器端代码加入:
    response.setHeader("Cache-Control", "no-cache, must-revalidate");
方法三:
    用JavaScript在Ajax提交的时候加入一个随机数做为URL中的一个参数。req.open(url + "&" + Math.random). 
28.JQuery怎么拿页面的值、属性。 
     用attr函数,val
29.AJAX怎么用的,怎么把数据提交到后台的?
  经过open函数打开链接,经过send方法发送数据
30.在写下js和JQuery如何获取页面元素的?

      js能够用document.getElementById或者document.getElementByName,可是JQuery就是比较强大,能够用各类选择器来获取,最主要的仍是ID选择器("#id");
31.讲下JQuery里面的AJAX几种实现和比较方式

有load(),post(),get(),ajax(),getJson()等,详细说明具体实现,

load是把远程url地址获取后的html代码直接插入到当前元素里面,不须要写回调函数
$.get()是把远程url获取的信息经过回调函数来处理,经过get方式提交 
$.post()是把远程url获取的信息经过回调函数来处理,经过post方式提交
$.ajax是最复杂的一个ajax执行函数,它是$.get和$.post的基础  

32.讲下AJAX的缺点
   不支持回退按钮,对于手机移动设备不支持,数据量太大数据解析比较麻烦 

相关文章
相关标签/搜索