jQuery你必须了解的常见面试题(上)

jQuery常见面试题

1. jQuery库中的$()是什么?

       答:$()就是jQuery(),在里面可以传参数,作用就是获取元素。$()函数用于将任何对象包裹成jQuery对象,允许你调用定义在jQuery对象上的多个不同的方法。

2. jQuery能做什么?

       答:获取页面的元素;修改页面的外观;改变页面大的内容;响应用户的页面操作;为页面添加动态效果;无需刷新页面,即可以从服务器获取信息;简化常见的javascript任务。

3. jQuery的特点都有什么?

       答:jQuery的核心特性可以总结为:具有独特的链式语法和短小清晰的多功能接口;具有高效灵活的CSS选择器,并且可对CSS选择器进行扩展;拥有便捷的插件扩展机制和丰富的插件。jQuery兼容各种主流浏览器,如IE 6.0+、FF 1.5+、Safari 2.0+、Opera 9.0+等。

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

     答:ready()函数用于在文档进入ready状态时执行代码。当DOM 完全加载(例如HTML被完全解析,DOM树构建完成时),jQuery允许你执行代码。使用$(document).ready()的最大好处在于它适用于所有浏览器,帮你解决了跨浏览器的难题。

5. JavaScript的window.onload事件和jQuery的ready函数有何不同?

答:

(1)window.onload必须等到页面内包括图片的所有元素加载完毕后才能执行,$(document).ready()是DOM结构绘制完毕后就执行,不必等到加载完毕

(2)window.onload不能同时编写多个,如果有多个window.onload方法,只会执行一个,$(document).ready()可以同时编写多个,并且都可以得到

(3)执行window.onload没有简化写法,$(document).ready(function(){})可以简写成$(function(){})

6. jQuery里的ID选择器和class选择器有何不同?

       答:ID选择器使用ID来选择元素,例:$("#idtest1"), 而class选择器使用CSS class来选择元素,例:$(".classtest1")。当只需要选择一个元素时,使用ID选择器,如果需要选择具有相同 CSS class的元素,就要用class 选择器。

7. 说出jQuery中常见的几种函数以及他们的含义是什么?

       答:jQuery中常见的函数如下:

    (1)get()取得所有匹配的DOM元素集合;

    (2)get(index)取得其中一个匹配的元素.index表示取得第几个匹配的元素;

    (3)append(content)向每个匹配的元素内部追加内容;

    (4)after(content)在每个匹配的元素之后插入内容;

    (5)html()/html(var)取得或设置匹配元素的html内容;

    (6)find(expr)搜索所有与指定表达式匹配的元素;

    (7)bind(type,[data],fn)为每个匹配元素的特定事件绑定事件处理函数;

    (8)empty()删除匹配的元素集合中所有的子节点;

    (9)hover(over,out)一个模仿悬停事件(鼠标移动到一个对象上面及移出这个对象)的方法;

    (10)attr(name)取得第一个匹配元素的属性值。

8. 你是如何将一个HTML元素添加到DOM树中的?

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

9. jQuery中detach()和remove()方法的区别是什么?

答:detach():移除被选元素,包括所有文本和子节点。会保留所有绑定的事件、附加的数据。

       remove():移除被选元素,包括所有文本和子节点。绑定的事件、附加的数据等都会被移除。

10. $(this)和this关键字在jQuery中有何不同?

  答:$(this)返回一个jQuery对象,你可以对它调用多个jQuery方法,比如用text()获取文本,用val()获取值等等。而this代表当前元素,它是JavaScript关键词中的一个,表示上下文中的当前DOM元素,你不能对它调用jQuery方法,直到它被$()函数包裹,例如$(this)。

11. jQuery里的each()是什么函数?你是如何使用它的?

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

$('[name=NameOfSelectedTag] :selected').each(function(selected) {

    alert($(selected).text());

});

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

12. 你如何利用jQuery来向一个元素中添加和移除CSS类?

  答:通过利用addClass()removeClass()这两个jQuery方法,动态的改变元素的class属性。例如:使用类“.active"来标记它们的未激活和激活状态。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 220,809评论 6 513
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 94,189评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 167,290评论 0 359
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 59,399评论 1 294
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 68,425评论 6 397
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 52,116评论 1 308
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,710评论 3 420
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,629评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 46,155评论 1 319
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,261评论 3 339
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,399评论 1 352
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 36,068评论 5 347
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,758评论 3 332
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,252评论 0 23
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,381评论 1 271
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,747评论 3 375
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,402评论 2 358