(非原创)

毫无疑问,jQuery给了JavaScript急需的提振,这是一门如此有用,但同时总是常常被低估的语言. 在 jQuery 粉墨登场之前,我们曾经会写出冗长的JavaScript代码,不仅仅为更大型的应用程序,有时即使是更小的应用程序也要如此. 那种代码常常是既难以阅读又难以维护的.

在使用这个优秀的库之前写过原生的JavaScript,仅仅在用过它的一个月之后,我就能意识到jQuery的真正力量. 鉴于它的巨大人气,有关jQuery的面试问题,以及有关HTML和JavaScript的数量在任何web开发者面试中有所增加. 因为 jQuery 相对较新,大多数面试所涉及的问题都是围绕核心的 jQuery 库的,包括选择器, DOM 操作 以及 jQuery 基础.

在本篇文章中,我要向 HTML 和 JavaScript 开发人员分享 20 个在不同面试遇到的 jQuery 问题。这里面的一些问题也许同样会在那些要求同时进行服务端(Spring,Servlet 和 JSP)和客户端(HTML,CSS,JavaScript 和 jQuery)的开发 Java Web 开发面试中涉及。

如果你正要去面试一个职位,它需要你拥有多项技能,比如:Java、jQuery,它并不是希望你明白jQuery每一个细微的细节,或对其有全面的了解,但是如果你是要面试一个真正的客户端开发职位,你就需要积累更多高级的有技巧性的jQuery问题,而不限于本文列举的这些问题。不过,你可以通过本文来快速的温习那些jQuery面试中经常被提到的问题,而且它们大多也适用于有2到5年经验的web开发人员,特别是Java领域。

jQuery 面试问题和答案

JavaScript 是客户端脚本的标准语言,而 jQuery 使得编写 JavaScript 更加简单。你可以只用写几行的jQuery 代码就能实现更多的东西. 它是最常被用到的 JavaScript 库之一,并且现在已经很少有不用jQuery 而使用原生 JavaScript 的新项目了。这对于作为一个 Java web 开发者的你而言意味着你会在一场Java web开发面试中发现许多jQuery的面试问题.

早些时候,绝大部分都是 HTTP, HTML, CSS 以及 JavaScript,但最近开始,除了 JavaScript 基础之外,人们也希望知道你是否熟悉 jQuery。这16个jQuery的问题是为web开发者准备的,且也能够非常方便你在参加一次电话或者视频一轮的面试之前纠正一些关键的概念。如果你是 jQuery 新手,那么它也能够帮助你更加好的理解基础知识,并激励你去发现更多东西。

jQuery 库中的 $() 是什么?(答案如下)

()函数是jQuery()函数的别称,乍一看这很怪异,还使jQuery代码晦涩难懂。一旦你适应了,你会爱上它的简洁。() 函数是 jQuery() 函数的别称,乍一看这很怪异,还使 jQuery 代码晦涩难懂。一旦你适应了,你会爱上它的简洁。()函数是jQuery()函数的别称,乍一看这很怪异,还使jQuery代码晦涩难懂。一旦你适应了,你会爱上它的简洁。() 函数用于将任何对象包裹成 jQuery 对象,接着你就被允许调用定义在 jQuery 对象上的多个不同方法。你甚至可以将一个选择器字符串传入 $() 函数,它会返回一个包含所有匹配的 DOM 元素数组的 jQuery 对象。这个问题我已经见过好几次被提及,尽管它非常基础,它经常被用来区分一个开发人员是否了解 jQuery。

网页上有 5 个

元素,如何使用 jQuery来选择它们?(答案)

另一个重要的 jQuery 问题是基于选择器的。jQuery 支持不同类型的选择器,例如 ID 选择器、class 选择器、标签选择器。鉴于这个问题没提到 ID 和 class,你可以用标签选择器来选择所有的 div 元素。jQuery 代码:$(“div”),这样会返回一个包含所有 5 个 div 标签的 jQuery 对象。更详细的解答参见上面链接的文章。

jQuery 里的 ID 选择器和 class 选择器有何不同?(答案)

如果你用过 CSS,你也许就知道 ID 选择器和 class 选择器之间的差异,jQuery 也同样如此。ID 选择器使用 ID 来选择元素,比如 #element1,而 class 选择器使用 CSS class 来选择元素。当你只需要选择一个元素时,使用 ID 选择器,而如果你想要选择一组具有相同 CSS class 的元素,就要用 class 选择器。在面试过程中,你有很大几率会被要求使用 ID 选择器和 class 选择器来写代码。下面的 jQuery 代码使用了 ID 选择器和 class 选择器:

$(’#LoginTextBox’) // Returns element wrapped as jQuery object with id=‘LoginTextBox’

$(’.active’) // Returns all elements with CSS class active.

正如你所见,从语法角度来说,ID 选择器和 class 选择器的另一个不同之处是,前者用字符”#”而后者用字符”.”。更详细的分析和讨论参见上面的答案链接。

如何在点击一个按钮时使用 jQuery 隐藏一个图片?

这是一个事件处理问题。jQuery为按钮点击之类的事件提供了很好的支持。你可以通过以下代码去隐藏一个通过ID或class定位到的图片。你需要知道如何为按钮设置事件并执行hide() 方法,代码如下所示:

$(’#ButtonToClick’).click(function(){

$(’#ImageToHide’).hide();

});

我喜欢这个问题,因为很贴近实际使用,代码也不复杂。

$(document).ready() 是个什么函数?为什么要用它?(answer)

这个问题很重要,并且常常被问到。 ready() 函数用于在文档进入ready状态时执行代码。当DOM 完全加载(例如HTML被完全解析DOM树构建完成时),jQuery允许你执行代码。使用$(document).ready()的最大好处在于它适用于所有浏览器,jQuery帮你解决了跨浏览器的难题。需要进一步了解的用户可以点击 answer链接查看详细讨论。

JavaScript window.onload 事件和 jQuery ready 函数有何不同?(答案)

这个问答是紧接着上一个的。JavaScript window.onload 事件和 jQuery ready 函数之间的主要区别是,前者除了要等待 DOM 被创建还要等到包括大型图片、音频、视频在内的所有外部资源都完全加载。如果加载图片和媒体内容花费了大量时间,用户就会感受到定义在 window.onload 事件上的代码在执行时有明显的延迟。

另一方面,jQuery ready() 函数只需对 DOM 树的等待,而无需对图像或外部资源加载的等待,从而执行起来更快。使用 jQuery $(document).ready() 的另一个优势是你可以在网页里多次使用它,浏览器会按它们在 HTML 页面里出现的顺序执行它们,相反对于 onload 技术而言,只能在单一函数里使用。鉴于这个好处,用 jQuery ready() 函数比用 JavaScript window.onload 事件要更好些。

如何找到所有 HTML select 标签的选中项?(答案如下)

这是面试里比较棘手的 jQuery 问题之一。这是个基础的问题,但是别期望每个 jQuery 初学者都知道它。你能用下面的 jQuery 选择器获取所有具备 multiple=true 的 标签的选中项:

1

$(’[name=NameOfSelectedTag] :selected’)

这段代码结合使用了属性选择器和 :selected 选择器,结果只返回被选中的选项。你可按需修改它,比如用 id 属性而不是 name 属性来获取 标签。

jQuery 里的 each() 是什么函数?你是如何使用它的?(答案如下)

each() 函数就像是 Java 里的一个 Iterator,它允许你遍历一个元素集合。你可以传一个函数给 each() 方法,被调用的 jQuery 对象会在其每个元素上执行传入的函数。有时这个问题会紧接着上面一个问题,举个例子,如何在 alert 框里显示所有选中项。我们可以用上面的选择器代码找出所有选中项,然后我们在 alert 框中用 each() 方法来一个个打印它们,代码如下:

KaTeX parse error: Expected '}', got 'EOF' at end of input: …ted) { alert((selected).text());

});

其中 text() 方法返回选项的文本。

你是如何将一个 HTML 元素添加到 DOM 树中的?(答案如下)

你可以用 jQuery 方法 appendTo() 将一个 HTML 元素添加到 DOM 树中。这是 jQuery 提供的众多操控 DOM 的方法中的一个。你可以通过 appendTo() 方法在指定的 DOM 元素末尾添加一个现存的元素或者一个新的 HTML 元素。

你能用 jQuery 代码选择所有在段落内部的超链接吗?(答案略)

这是另一个关于选择器的 jQuery 面试题。就像其他问题那样,只需一行 jQuery 代码就能搞定。你可以使用下面这个 jQuery 代码片段来选择所有嵌套在段落(

标签)内部的超链接(

java的jquery面试题_10个最常见的JQuery面试题相关推荐

  1. jquery时间网格_10个最迷人的jQuery网格

    jQuery通常是大多数想在JavaScript编程中扎根的人的首选,因为jQuery提供了一种选择HTML元素和操作DOM的简便方法. 根据W3Techs的最新统计数据 ,jQuery非常流行,&q ...

  2. python迭代器面试题_2018年最常见的Python面试题答案(下)

    下篇和上篇一样,既有基础知识也有进阶知识,内容涵盖脚本撰写.Python编码和数据结构.搜集整理自编程网站DataFlair技术团队分享的一套Python面试题合集.上篇链接如下:li li:2018 ...

  3. java要频繁调用容器时_Java最常见的200+面试题及自己梳理的答案--面试必备(一)...

    昨天在今日头条上看到一份所谓经常面别人的TL梳理的面试题,看着比较完善,但是,没有对应的答案,自己看着研究学习了下,顺带梳理下答案.主要包括以下模块:Java基础.容器.多线程.反射.对象拷贝.Jav ...

  4. jquery 图像滑块_10个很棒的jQuery图像滑块插件

    jquery 图像滑块 The introduction of jQuery has contributed a lot in making the overall process of websit ...

  5. java基础面试题及答案_java常见的基础面试题(含答案及解析)

    (单选题)1.类Car里面有个方法run(),如果直接用Car.run(),则方法run前面必须用的关键词是? () A class B final C public D static 正确答案是:D ...

  6. 【前端面试题】—53道常见NodeJS基础面试题(附答案)

    说到前端就不得不提到后端,我们给用户展示页面所需的数据正是从后端获取的,所以了解后端的运行原理和技术的实现很有必要. Node. js是一个不错的选择,它是基于JavaScript语法的一套服务器端( ...

  7. java cglib jar包_Java面试题|反射必看的4道面试题

    上三篇: 动力节点:Java面试题|多线程21道必看面试题​zhuanlan.zhihu.com 动力节点:面试题|Java基础17道常见面试题​zhuanlan.zhihu.com 动力节点:面试题 ...

  8. 2023年Java面试题大全(最新版版)面试题附答案详解,看完BTA可进

    进大厂是大部分程序员的梦想,而进大厂的门槛也是比较高的,所以这里整理了一份阿里.美团.滴滴.头条等大厂面试大全,其中概括的知识点有:Java.MyBatis.ZooKeeper.Dubbo.Elast ...

  9. Java面试题大全(整理版)1000+面试题附答案详解,最全面详细,看完不进你找我

    进大厂是大部分程序员的梦想,而进大厂的门槛也是比较高的,所以这里整理了一份阿里.美团.滴滴.头条等大厂面试大全,其中概括的知识点有:Java.MyBatis.ZooKeeper.Dubbo.Elast ...

最新文章

  1. 「操作系统」《自己动手写操作系统》1.1前期准备工作
  2. Java jdbc中的date,大文本等类型转换
  3. php中address,address.php
  4. C 语言 函数调用栈
  5. centos将某一目录权限给用户_centos7如何新建普通权限用户,仅能访问指定目录,使用gcc?...
  6. linux自定义全局命令
  7. 新宝解读大盘单边攀升突破3600点 大金融崛起
  8. 51单片机外设LCD12864显示字符串
  9. Centos隐藏桌面图标
  10. 第1章 微处理器、微型计算机、微型计算机系统的区别
  11. 这些行业已经开始用数据挖掘了,我们的前途光明
  12. 数学词汇的英译,写文章,读文献必备
  13. 三菱触摸屏GS2107以太网连接FX系列PLC
  14. 如何导入阿里巴巴字体图标
  15. 用于期望视场中光导耦合的二元光栅的优化
  16. 向毕业妥协系列之深度学习笔记(三)DL的实用层面(上)
  17. 移动开发技术总结!字节大神强推千页PDF学习笔记,附超全教程文档
  18. 速卖通html编辑页面,速卖通商品发布-基本信息填写
  19. 还在使用if进行空判断?
  20. mysql关键字与连表操作理论

热门文章

  1. 骨传导蓝牙耳机款式怎么选、骨传导耳机入门推荐
  2. Python+Vue计算机毕业设计校园共享单车管理系统61hc4(1)(源码+程序+LW+部署)
  3. CAS(乐观锁)详细讲解
  4. 推荐系统 - 3 - 协同过滤算法、随机游走算法
  5. mysql next value for_记录下这周的mysql调优工作
  6. Ubuntu 设置网络代理
  7. 如何用Python做词云?(基础篇视频教程)
  8. 分布式限流实战--redis实现令牌桶限流
  9. 如何快速分享您的 Wi-Fi 密码
  10. 服务器cpu支持DDR4,AMD终于有了DDR4处理器:竟然是这