Web前端JQuery面试题(一)

一:选择器

基本选择器

  1. 什么是#idelement.class*selector1, selector2, selectorN

答:

根据给定的id匹配一个元素,用于搜索,通过id的属性给定值。

案例:查找idda3的元素

html代码:
<div id="da1"></div>
<div id="da2"></div>
<div id="da3"></div> jquery代码:
$("#da3"); 结果:
[ <div id="da3"></div> ] html代码:
<div id="da:q"></div> jquery代码:
$("#da\\:q");

根据给定的元素名匹配所有元素

案例,查找div元素:

html代码:
<div> da1 </div>
<div> da2 </div>
<p>da3</p> jquery代码:
$("div"); 结果:
[ <div> da1 </div> , <div> da2 </div> ]

根据给定的类匹配元素

html代码:
<div class="dashu"> dashu </div>
<div class="da"> da </div> jquery代码:
$(".da"); 结果:
[ <div class="da"> da </div> ]

匹配所有元素*

html代码:
<div> 1 </div>
<p> 2 </p> jquery代码:
$("*"); 结果:
[ <div> 1 </div>, <p> 2 </p> ]

将每一个选择器匹配到的元素合并后一起返回:

html代码:
<div class="da"></div>
<p></p>
<span></span> jquery代码:
$(".da, p, span"); 结果:
[ <div class="da"></div>, <p></p>, <span></span> ]

层级选择器

2.后代选择器,子代选择器,nextsiblings描述?

给祖先元素下匹配所有的后代元素

html代码:
<table>
<input id="da"></input>
<input id="da2"></input>
<p></p>
</table> jquery代码:
$("table input"); 结果:
[ <input id="da"></input>, <input id="da2"></input> ]

给父元素下匹配所有子元素:

html代码:
<table>
<input id="da"></input>
<p>
<input id="da2"></input>
</p>
<p></p>
</table> jquery代码:
$("table > input");
结果:
[ <input id="da"></input> ]

匹配所有prev元素后的next元素:

html代码:
<table>
<p>
<input id="da"></input>
</p>
<p>
<input id="da2"></input>
</p>
<p></p>
</table> jquery代码:
$("p + input"); 结果:
[ <input id="da"></input>, <input id="da2"></input> ]

匹配prev元素后的所有siblings元素:

找出同辈的元素

html代码:
<table>
<p>
<input id="da"></input>
</p>
<p>
<input id="da2"></input>
</p>
<p></p>
</table>
<input id="da3"></input> jquery代码:
$("table ~ input"); 结果:
[ <input id="da3"></input> ]
  1. 基本选择器:?
:first :last :not :even :odd :eq :gt :lt :header :animated

获取第一个元素

<ul>
<li>1</li>
<li>2</li>
</ul> $("li").first();

$("li :first"); [ <li>1</li> ]

获取最后一个元素

<ul>
<li>1</li>
<li>2</li>
</ul> $('li').last();
$("li :last"); [ <li>2</li> ]

去除所有与给定选择器匹配的元素

查找所有未选中的 input 元素

<input name="da1" />
<input name="da2" checked="checked" /> $("input:not(:checked)") [ <input name="da1" /> ]

匹配所有索引值为偶数的元素

<table>
<tr><td>0</td></tr>
<tr><td>1</td></tr>
<tr><td>2</td></tr>
</table> $("tr:even") [ <tr><td>0</td></tr>, <tr><td>2</td></tr> ]

匹配所有索引值为奇数的元素

匹配所有索引值为奇数的元素

<table>
<tr><td>0</td></tr>
<tr><td>1</td></tr>
<tr><td>2</td></tr>
</table> $("tr:odd") [ <tr><td>1</td></tr> ]

匹配一个给定索引值的元素

<table>
<tr><td>0</td></tr>
<tr><td>1</td></tr>
<tr><td>2</td></tr>
</table> $("tr:eq(1)") [ <tr><td>1</td></tr> ]

匹配所有大于给定索引值的元素

<table>
<tr><td>0</td></tr>
<tr><td>1</td></tr>
<tr><td>2</td></tr>
</table> $("tr:gt(0)") [ <tr><td>1</td></tr>, <tr><td>2</td></tr> ]

匹配所有小于给定索引值的元素

<table>
<tr><td>0</td></tr>
<tr><td>1</td></tr>
<tr><td>2</td></tr>
</table> $("tr:lt(2)") [ <tr><td>0</td></tr>, <tr><td>1</td></tr>]

匹配标题元素

<h1>1</h1>
<p>1</p>
<h2>2</h2>
<p>2</p> $(":header"); [ <h1>1</h1>, <h2>2</h2>]

匹配所有正在执行动画效果的元素

4.内容选择器的描述?

:contains :empty :has :parent

匹配包含给定文本的元素

匹配所有不包含子元素或者文本的空元素

匹配含有选择器所匹配的元素的元素

匹配含有子元素或者文本的元素

5.可见性选择器

:hidden :visible

匹配所有不可见元素

display:none
type="hidden"

匹配所有的可见元素

  1. 属性选择器的描述?
[attribute]
[attribute = value]
匹配给定的属性是某个特定值的元素
[attribute != value]
匹配所有不含有特定的属性
[attribute ^= value]
匹配给定的属性以某值开始的元素
[attribute $= value]
匹配给定的属性以某值结尾的元素
[attribute *= value]
匹配有包含某些值的特定元素
[selector1][selector2]
同时满足多个条件使用
$("div[id]");

<div>
<p></p>
</div>
<div id="da"></div> 获取
[<div id="da"></div>]
$("div [id='da']")
  1. 选择器-子元素有哪些?
:nth-child
从1开始的,匹配父元素下第n个元素
$("ul li:nth-child(2)"); 获取2 3 4。。 :first-child
匹配每个父元素下的第一个子元素 :last-child
匹配每个父元素下的最后一个子元素 :only-child
匹配父元素中只有唯一的子元素,如果父元素中有多个子元素,就不会被匹配
  1. 表单元素有哪些?
:input
会获取所有input,textarea,select,button
:text
匹配所有单行文本元框
:password
匹配所有密码框
:radio
匹配所有单选按钮
:checkbox
匹配所有复选框
:submit
匹配所有提交按钮
:image
匹配所有图像
:reset
匹配所有重置按钮
:button
匹配所有按钮
:file
匹配所有文本域
:hidden
匹配所有不可见元素
  1. 选择器表单对象属性有哪些?
:enabled
匹配所有可用元素
:disabled
匹配所有不可用元素
:checked
匹配所有选中元素
:selected
匹配所有选中option元素
  1. 在jquery中有哪些属性?
attr(name);
获取属性值
attr(properties);
以“名/值对”对象添加属性
attr(key,value);
为所匹配的元素设置属性值
attr(key, function(index, attr));
为所匹配的元素设置属性值
removeAttr(name);
删除属性
  1. css 类属性有哪些?
addClass(class);
添加一个类名 $("p").addClass("selected");
addClass(function(index, class));
添加类名 $('ul li:last').addClass(function() {}) removeClass([class]);
删除指定类
removeClass(function(index, class))
删除指定类
toggleClass(class);
有切换效果,如果有这个属性值就删除如果没有就添加
toggleClass(class, switch);
switch为ture添加class,反之删除
toggleClass(function(index, class), [switch]);
switch为ture添加class,反之删除
  1. html代码?
html()
获取html内容
html(val)
设置html内容的值
html(function(index, html));
设置html内容的值
  1. 文本有哪些?
text()
获取元素内容
text(val)
设置内容文本
text(function(index, text))
设置内容文本
  1. 关于val有哪些?
val()
获取元素的当前值
val(val)
设置匹配元素的值
val(array)
赋值作用
val(function(index, value))
设置元素值
  1. 过滤选择器
eq(index): 获取第n个元素 $("p").eq(1)

first(): 获取第一个元素 $('li').first()

last():获取最后一个元素 $('li').last()

hasClass(class):判断是否有给类

filter(expr):选出表达式匹配的元素

is(expr):进行判断

map(callback):$.map()

has(expr):保留 .has()
not(expr): .not()
  1. 一些方法?
children();
获取子元素
find();
用于查找表达式
next();
获取下一个元素
nextAll();
获取下一个所有元素
parent();
获取父元素
parents();
获取所有匹配元素的祖先元素的集合
prev();
获取前一个元素
prevAll();
获取之前所有同辈元素
siblings(); $("div").siblings()
add(); $("p").add("span")

$("p").add("<span>da</span>");

<p></p> <span>da</span>
  1. 文档处理
append()
中间插入
<p></p>
$("p").append("<div></div>");
<p><div></div></p> appendTo(); <p></p>
<div><div> $("p").appendTo("div");
<div><p></p></div>
prepend() 元素内部前置内容
<p>hello</p> $("p").prepend("<b></b>"); <p><b></b>hello</p> $("p").prependTo("<b></b>"); <b><p></p></b>
after(); 在后面追加
before(); 在前面追加 $("p").insertAfter("#foo");
<div id="foo">da</div><p>da</p> $("p").insertBefore("#foo");
<p></p><div id="foo"></div>
wrap();

$("p").wrap("<div></div>");

<div><p></p></div>

结言

好了,欢迎在留言区留言,与大家分享你的经验和心得。

感谢你学习今天的内容,如果你觉得这篇文章对你有帮助的话,也欢迎把它分享给更多的朋友,感谢。

达叔小生:往后余生,唯独有你

You and me, we are family !

90后帅气小伙,良好的开发习惯;独立思考的能力;主动并且善于沟通

简书博客: 达叔小生

https://www.jianshu.com/u/c785ece603d1

结语

  • 下面我将继续对 其他知识 深入讲解 ,有兴趣可以继续关注
  • 小礼物走一走 or 点赞

Web前端JQuery面试题(一)的更多相关文章

  1. Web前端JQuery面试题(三)

    Web前端JQuery面试题(三) 1.怎么阻止冒泡过程? stopPropagation(); // 阻止冒泡过程 2.ready()方法和onload()方法的区别? onload()方法要等页面 ...

  2. Web前端JQuery面试题(二)

    Web前端JQuery面试题(二) 1.请写出jquery的语法? <script type="text/javascript"> $(document).ready( ...

  3. Web前端面试笔试题总结

    最近一段时间要毕业了,忙着找工作,见过不少笔试面试题,自己总结了一些加上网上找的一些整合了一下.答案暂时都东拼西凑出来了,但是还是先不发出来,一方面是答案并不是唯一的并且自己的答案不能保证对,另一方面 ...

  4. web前端经典面试题大全及答案

    阅读目录 JavaScript部分 JQurey部分 HTML/CSS部分 正则表达式 开发及性能优化部分 本篇收录了一些面试中经常会遇到的经典面试题以及自己面试过程中遇到的一些问题,并且都给出了我在 ...

  5. 【理论面试篇】收集整理来自网络上的一些常见的 经典前端、H5面试题 Web前端开发面试题

    ##2017.10.30收集 面试技巧 5.1 面试形式 1)        一般而言,小公司做笔试题:大公司面谈项目经验:做地图的一定考算法 2)        面试官喜欢什么样的人 ü  技术好. ...

  6. 【编码题篇】收集整理来自网络上的一些常见的 经典前端、H5面试题 Web前端开发面试题

    编写一个方法 求一个字符串的字节长度假设:一个英文字符占用一个字节,一个中文字符占用两个字节 function GetBytes(str){ var len = str.length; var byt ...

  7. Python之Web前端jQuery扩展

    Python之Web前端: 一. jQuery表单验证 二. jQuery扩展 三. 滚动菜单 一. jQuery表单验证: 任何可以交互的站点都有输入表单,只要有可能,就应该对用户输入的数据进行验证 ...

  8. web前端-----jQuery

    web前端之jQuery篇 一 jQuery是什么? [1]   jQuery由美国人John Resig创建,至今已吸引了来自世界各地的众多 javascript高手加入其team. [2]   j ...

  9. 2018最新Web前端经典面试试题及答案

    javascript: JavaScript中如何检测一个变量是一个String类型?请写出函数实现 typeof(obj) === "string" typeof obj === ...

随机推荐

  1. mybatis学习笔记1.零碎记录

    1.conf.xml文件中的一些标签先后顺序会有影响. conf.xml文件<configuration>标签对里面配置的<typeAliases>标签的位置还有讲究?我将其放 ...

  2. GUI学习之九——QLineEdit的学习总结

    我们在前面学习了各种按钮控件,从这一章开始就是各种输入控件的学习. 首先要用的就是QLineEdit——单行编辑器, 一描述 QLineEdit是一个单行文本编辑器,允许用户输入和编辑单行纯文本.自带 ...

  3. 用Python语言开发VTK程序的步骤

    在Windows环境下用Python语言开发VTK程序 1.安装Python集成开发环境IDLE:下载地址:https://www.python.org/downloads/ 2.然后到VTK官网下载 ...

  4. si_da

    1. apt-get 从互联网的软件仓库中搜索.安装.升级.卸载软件或操作系统 一般需要root权限执行,所以一般跟着sudo命令 sudo ifstat apt-get install -y ifs ...

  5. windbg排查大内存

    现在都是用windbg preview,安装比较麻烦了,还要配置环境变量, 并且每次分析前要先执行 !analyze - v !eeheap -gc !DumpHeap -min 500 000002 ...

  6. WebDriver中的操作使用

    1.WebDriver中使用jquery假如设定jquery包的路径为path,则程序如下: String jquery=null; FileInputStream input = new FileI ...

  7. C++ vector动态数组

    #include<vector>头文件 vector类称作向量类 百度百科的解释:https://baike.baidu.com/item/vector/3330482 我喜欢把知识点拿出 ...

  8. 通俗易懂--SVM算法讲解(算法+案例)

    1.SVM讲解 新闻分类案例 SVM是一个很复杂的算法,不是一篇博文就能够讲完的,所以此篇的定位是初学者能够接受的程度,并且讲的都是SVM的一种思想,通过此篇能够使读着会使用SVM就行,具体SVM的推 ...

  9. 绑定hover事件

    <label> <span id="pattern">实战模式</span> <div class='tab' style="t ...

  10. 81、iOS本地推送与远程推送详解

    一.简介 分为本地推送和远程推送2种.可以在应用没打开甚至手机锁屏情况下给用户以提示.它们都需要注册,注册后系统会弹出提示框(如下图)提示用户石否同意,如果同意则正常使用:如果用户不同意则下次打开程序 ...