jquery面试题

jQuery 库中的$()是什么?

()函数是jQuery()函数的别称,()函数用于将任何对象包裹成 jQuery 对象,允许调用定义在 jQuery 对象上的多个不同方法。可以将一个选择器字符串传入$()函数,它会返回一个包含所有匹配的 DOM 元素数组的 jQuery 对象。

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

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

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(){});

如何找到所有 HTML select 标签的选中项?

用下面的 jQuery 选择器获取所有具备 multiple=true 的<select >标签的选中项:
$('[name=NameOfSelectedTag] :selected')

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

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

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

$('[name=NameOfSelectedTag] :selected').each(function(selected) {
    alert($(selected).text());
});

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

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

这是另一个关于选择器的 jQuery 面试题。就像其他问题那样,只需一行 jQuery 代码就能搞定。你可以使用下面这个 jQuery 代码片段来选择所有嵌套在段落(<p>标签)内部的超链接(<a>标签)……

(this) 和 this 关键字在 jQuery 中有何不同?这对于很多 jQuery 初学者来说是一个棘手的问题,其实是个简单的问题。(this)返回一个 jQuery 对象,你可以对它调用多个 jQuery 方法,比如用 text()获取文本,用val() 获取值等等。而 this 代表当前元素,它是 JavaScript 关键词中的一个,表示上下文中的当前 DOM 元素。你不能对它调用 jQuery 方法,直到它被()函数包裹,例如(this)。

你如何使用jQuery来提取一个HTML 标记的属性 例如链接的href?

attr()方法被用来提取任意一个HTML元素的一个属性的值. 你首先需要利用jQuery选择及选取到所有的链接或者一个特定的链接,然后你可以应用attr()方法来获得他们的href属性的值。下面的代码会找到页面中所有的链接,并返回href值:

$('a').each(function(){
   alert($(this).attr('href'));
});

你如何使用jQuery设置一个属性值?

前面这个问题之后额外的一个后续问题是,attr()方法和jQuery中的其它方法一样,能力不止一样. 如果你在调用attr()的同时带上一个值 例如. attr(name, value), 这里name是属性的名称,value是属性的新值。

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

尽管detach()和remove()方法都被用来移除一个DOM元素, 两者之间的主要不同在于detach()会保持对过去被解除元素的跟踪, 因此它可以被取消解除, 而 remove()方法则会保持过去被移除对象的引用. 你也还可以看看 用来向DOM中添加元素的appendTo()方法。

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

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

使用 CDN 加载 jQuery 库的主要优势是什么 ? (答案)

这是一个稍微高级点儿的jQuery问题。好吧,除了报错节省服务器带宽以及更快的下载速度这许多的好处之外, 最重要的是,如果浏览器已经从同一个CDN下载类相同的 jQuery 版本, 那么它就不会再去下载它一次. 因此今时今日,许多公共的网站都将jQuery用于用户交互和动画, 如果浏览器已经有了下载好的jQuery库,网站就能有非常好的展示机会。

jQuery.get()和jQuery.ajax()方法之间的区别是什么?

ajax()方法更强大,更具可配置性, 让你可以指定等待多久,以及如何处理错误。get()方法是一个只获取一些数据的专门化方法。

jQuery 中的方法链是什么?使用方法链有什么好处?

方法链是对一个方法返回的结果调用另一个方法,这使得代码简洁明了,同时由于只对 DOM 进行了一轮查找,性能方面更加出色。

你要是在一个 jQuery 事件处理程序里返回了 false 会怎样?

这通常用于阻止事件向上冒泡。

哪种方式更高效:document.getElementbyId("myId") 还是 $("#myId")?

第一种,因为它直接调用了 JavaScript 引擎。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念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

推荐阅读更多精彩内容

  • 1 你在公司是怎么用jquery的? 答:在项目中是怎么用的是看看你有没有项目经验(根据自己的实际情况来回答) 你...
    山豆山豆阅读 8,651评论 0 43
  • 1、你在公司是怎么用jquery的? 在项目中是怎么用的是看看你有没有项目经验(根据自己的实际情况来回答) 你用过...
    蔡威大爷阅读 4,474评论 0 2
  • 1 如何在点击一个按钮时使用 jQuery 隐藏一个图片? 这是一个事件处理问题。jQuery为按钮点击之类的事件...
    Love大猪蹄子嘚MM阅读 191评论 0 0
  • 一、手写一个jQuery插件。 例1:封装jQuery对象方法的一个插件(使用jQuery.fn.extend()...
    迷人的洋葱葱阅读 756评论 0 0
  • jQuery 面试问题和答案 JavaScript 是客户端脚本的标准语言,而 jQuery 使得编写 JavaS...
    townof1997阅读 1,235评论 0 0