开发者社区> 技术小阿哥> 正文

jquery经典题型总结

简介:
+关注继续查看

1、DOM对象与jquery对象相互转换

DOM对象可以转换为jquery对象:$(DOM对象)

jquery对象可以转换为DOM对象:jquery对象提供get(index)方法

注:jquery对象与DOM对象不能相互调用

2、jquery的选择器与css的选择器之间的关系?

1.jquery的选择器其实是源于CSS的选择器

2.jquery的作者本人非常喜欢css选择器的用法

3.css中的选择器大量在jquery中应用

4.jquery扩展了css中没有的选择器

3、内容过滤选择器

contains(text)--当前元素及后代元素,后代包含,他就包含

parent--获取包含文本内容或子元素的元素

empty--获取没有文本内容或子元素的空元素(适合清空)

hasselector--获取含有匹配选择器的元素的父元素

eg:div:.one —— 获取包含classonediv父级div

4、富客户端与瘦客户端

富客户端:Rich Client

富因特网应用程序(Rich Internet ApplicationsRIA)利用具有很强交互性的富客户端技术来为用户提供一个更高和更全方位的网络体验。

瘦客户端:瘦客户端(Thin Client指的是在客户端-服务器网络体系中的一个基本无需应用程序的计算机终端。 它通过一些协议和服务器通信,进而接入局域网。作为应用程序平台的Internet的到来为企业应用程序提供了一个全新的领域:一个基于Internet/intranet的应用程序运用一个只包含一个浏览器的瘦客户端。这个浏览器负责解释、显示和处理应用程序的图形用户界面(GUI)和它的数据。这样的一个应用程序只需要被安装在一个Web服务器上,用户可以自动接收升级。一个解决方案只需要部署一次,甚至对成千的用户也是如此,这种想法的确很吸引人,尤其是Internet技术帮我们缓解了一些传统的应用程序的障碍,比如防火墙和对多平台的支持。

5、阻止事件默认行为

eg:a标签的链接跳转,form表单元素按钮的提交,reset重置,)

return false  可以取消默认的行为并阻止事件冒泡

event.prenventDefault()    只取消默认行为

[return false  不仅会阻止默认行为,还会阻止后边的代码执行,所以如果是仅仅阻止默认行为,最好放在最后面]

eg:

1、通过返回false来取消默认的行为并阻止事件起泡。

jQuery 代码:

$("form").bind(

"submit",

function() {

return false;

}

);

2、通过使用 preventDefault() 方法只取消默认的行为。

jQuery 代码:

$("form").bind(

"submit",

function(event){

event.preventDefault();

}

);

3、通过使用 stopPropagation() 方法只阻止一个事件起泡。

jQuery 代码:

$("form").bind(

"submit",

function(event){

event.stopPropagation();

}

);

6、复制元素

   JQUERY - clone(Boolean) - 是否复制事件 (独立的)

   原生DOM - cloneNode(Boolean) - 是否复制后代节点

  (不是独立的,会跟着原来的变)

   cloneNode(Boolean)方法

在默认情况(false),只复制自身节点(不包含后代节点)

当参数传递为true时,复制后代节点

clone默认false,只复制自身节点及后代节点,但是不复制事件,

true,复制事件

7、页面加载

    ready() - 类似于window.onload(只有window为页面加载)

    写法一:$(document).ready(function(){})

 写法二:$().ready(function(){})

 写法三:简写   $(function(){})

 开发使用简写形式(不要忘记所有写法),面试可能会考全写

 与匿名自调函数的写法类似:匿名自调:(function(){})()

8JQUERY中的ready()window.onload事件的区别?【必考】

ready()1ready具有简写写法的(写法固定)

    2、 一个HTML页面允许编写多个ready

      3(执行速度快)只需等待DOM树结构加载完毕

  ready更快)

onload事件:1、没有任何简写形式

      2、一个HTML页面只允许编写一个onload

      3(速度慢)必须等待HTML所有内容加载完毕

     (比如图片、音频、视频等不属于DOM

9、 bind()live()delegate()one()on()的区别?

  答:bind()live()on()都是事件绑定

   bind()live()方法的底层逻辑,就是on()

   live()JQUERY的新版本中废除

   delegate()live()新版本替换

   one()绑定一个一次性事件【一次性:只能触发一次】

注:使用新版本的jQuery,一般多用On,最重要的是Bindon的用法。onoff是一对,live的反操作为diedelegate 的反操作,undelegate

10JQUERY与其他JS库的冲突

      描述 - 在于"$"符号的使用权的冲突

      解决(原则) - JQUERY主动放弃

      解决方案【原则都是一样的】

        方案一 - JQUERY自此不再使用"$",改为jQuery

          问题 - JQUERY的代码变得复杂【最简单但有问题】

        方案二 - JQUERY对外不再使用"$",改为jQuery

          利用JavaScript中的自调函数

 (function($){//形参

      // 这里封装所有JQUERY代码

 })(jQuery);//实参

        方案三 - JQUERY对外不再使用"$",改为jQuery

          利用JQUERY中的ready机制

 $(document).ready(function($){

      // 这里封装所有JQUERY代码

 });

        方案四

         jQuery.noConflict();//手册中 核心--多库共存,表示主动放弃

 (function($){

      // 这里封装所有JQUERY代码

 })(jQuery);

        方案五

         jQuery.noConflict();

 $(document).ready(function($){

      // 这里封装所有JQUERY代码

 });

推荐方案:方案五 (用的是jQuery的官方机制解决的)

11、console(控制台)四个级别

 log()-日志级别

 info()-信息级别前面是个i

 warn()-警告级别前面是!

 error()-错误级别前面是×

12、appendprepend区别:

 append() - 作为最后一个子元素插入到指定元素中

 【插入在指定元素的后面】

 【显示出来是在后面,作为子元素出现,保留各自前面的li点】

     prepend() - 作为第一个子元素插入到指定元素中

    【插入在指定元素的前面】

 【显示出来是在前面,作为子元素出现,不保留原来li前面的点】

13、隐式迭代-不管过程(只关心输入和输出)

   【即只关心遍历谁,遍历之后的结果是怎么样的,比如原生JS中:for inwhile(但不算完整的)】

 显式迭代-关心过程(关心遍历谁,遍历之后的结果,及遍历过程,典型的是:for循环)

14、类数组对象与数组的区别

 类数组对象 类型是Object

   结构类似于数组

 数组:类型是Array

  值的有序列表

15JQUERYget()eq()[]的区别?

JQUERY利用get()[]可以将JQUERY对象转换为DOM对象

get()方法是JQUERY提供的API

[]源于JQUERY对象是类数组对象

eq()返回JQUERY对象

16$.each()each()的区别

1)调用方式不同

2)接收的参数个数及作用不同

3$.each()与页面无关,each()与页面有关

$.each(obj,callback)-全局(JQUERY底层代码)函数

$().each(callback)-(JQUERY)对象方法(也可以是直接写each,前面的是工厂函数)

这些方法都是隐式迭代

$().each()工厂函数返回的是jQuery对象,$.each()返回的jQuery底层的全局函数】【面试也可能会问】

1$("input").each(function(index, domEle){

console.log(domEle.value);

});

2$.each($("input"),function(index,domEle){

console.log(domEle);

});

3var arr = [1,2,3,4,5];

$.each(arr,function(index,domEle){

console.log(domEle);

});

17、Number类型(包括整型和浮点型)

132位(整型)或64位(浮点型)【js中不分】

2)二进制、八进制还是十六进制 最后得到的都是十进制的

     【只有js是这样婶儿的~

(3)正无穷和负无穷

面试问题:正无穷加负无穷是否等于0?答:不等于。

18JQUERY UI的问题(面试有时会问)

     JQUERY UI并不是一个JS

     JQUERY UI并不是一个JQUERY插件



本文转自 蓓蕾心晴 51CTO博客,原文链接:http://blog.51cto.com/beileixinqing/1862031,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
腾讯云服务器 设置ngxin + fastdfs +tomcat 开机自启动
在tomcat中新建一个可以启动的 .sh 脚本文件 /usr/local/tomcat7/bin/ export JAVA_HOME=/usr/local/java/jdk7 export PATH=$JAVA_HOME/bin/:$PATH export CLASSPATH=.
14895 0
阿里云服务器ECS登录用户名是什么?系统不同默认账号也不同
阿里云服务器Windows系统默认用户名administrator,Linux镜像服务器用户名root
16378 0
如何设置阿里云服务器安全组?阿里云安全组规则详细解说
阿里云安全组设置详细图文教程(收藏起来) 阿里云服务器安全组设置规则分享,阿里云服务器安全组如何放行端口设置教程。阿里云会要求客户设置安全组,如果不设置,阿里云会指定默认的安全组。那么,这个安全组是什么呢?顾名思义,就是为了服务器安全设置的。安全组其实就是一个虚拟的防火墙,可以让用户从端口、IP的维度来筛选对应服务器的访问者,从而形成一个云上的安全域。
19724 0
阿里云服务器如何登录?阿里云服务器的三种登录方法
购买阿里云ECS云服务器后如何登录?场景不同,云吞铺子总结大概有三种登录方式: 登录到ECS云服务器控制台 在ECS云服务器控制台用户可以更改密码、更换系统盘、创建快照、配置安全组等操作如何登录ECS云服务器控制台? 1、先登录到阿里云ECS服务器控制台 2、点击顶部的“控制台” 3、通过左侧栏,切换到“云服务器ECS”即可,如下图所示 通过ECS控制台的远程连接来登录到云服务器 阿里云ECS云服务器自带远程连接功能,使用该功能可以登录到云服务器,简单且方便,如下图:点击“远程连接”,第一次连接会自动生成6位数字密码,输入密码即可登录到云服务器上。
36416 0
阿里云服务器端口号设置
阿里云服务器初级使用者可能面临的问题之一. 使用tomcat或者其他服务器软件设置端口号后,比如 一些不是默认的, mysql的 3306, mssql的1433,有时候打不开网页, 原因是没有在ecs安全组去设置这个端口号. 解决: 点击ecs下网络和安全下的安全组 在弹出的安全组中,如果没有就新建安全组,然后点击配置规则 最后如上图点击添加...或快速创建.   have fun!  将编程看作是一门艺术,而不单单是个技术。
20662 0
阿里云服务器如何登录?阿里云服务器的三种登录方法
购买阿里云ECS云服务器后如何登录?场景不同,阿里云优惠总结大概有三种登录方式: 登录到ECS云服务器控制台 在ECS云服务器控制台用户可以更改密码、更换系.
29035 0
阿里云ECS云服务器初始化设置教程方法
阿里云ECS云服务器初始化是指将云服务器系统恢复到最初状态的过程,阿里云的服务器初始化是通过更换系统盘来实现的,是免费的,阿里云百科网分享服务器初始化教程: 服务器初始化教程方法 本文的服务器初始化是指将ECS云服务器系统恢复到最初状态,服务器中的数据也会被清空,所以初始化之前一定要先备份好。
16629 0
13689
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
JS零基础入门教程(上册)
立即下载
性能优化方法论
立即下载
手把手学习日志服务SLS,云启实验室实战指南
立即下载