jquery

0.一定要记住
1.起步开头
2.选择器
3.写法注意点
4.插入节点
5.ajax
6.面试题
7.解决冲突
8.核心函数
9.jQuery对象
10.静态方法
11.each()
12.map()
13.each()和map()的区别
14.其他静态方法
15.attr方法和prop方法区别
16.事件绑定
17.事件解绑
18.冒泡事件和默认事件
19.自动触发事件
20.自定义事件
21.事件命名空间
22.获取事件的坐标
23.事件委托
24.html 、text
25.获取图片的宽高
26.鼠标的移入和移出
27.index()、el()、get()
28.复制节点
29.$传入参数
30.jq基本结构

0.一定要记住
jq的强大之处是在于sizzle引擎的设计,
而现在sizzle引擎大多数用于爬虫提供便利

1.起步开头
要下载

$(function(){
 ...
})

或者

Jquery(function(){
 ...
})

或者

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

或者

Jquery(document).ready(function(){
...
})

2.选择器
a.内容选择器

  $('p:contains(d)').css('background-color', 'red')

3.写法注意点
a.简洁原则
减少dom查询和减少dom操作(eg:将<li>for之后再插入dom)
b.巧选择对象加事件减少绑定事件的个数

4.插入节点
append():向每个匹配的元素内部追加内容,当做最后一个儿子

prepend():向每个匹配的元素内部前置内容。当做第一个儿子

after():在每个匹配的元素之后插入内容,当做后一个兄弟

before():在每个匹配的元素之前插入内容,当做前一个兄弟

wap():加多一个包裹的标签

upwap():移除标签

5.ajax
在这里插入图片描述
6.面试题

  1. jQuery 库中的 $() 是什么?
    ( ) 函 数 是 j Q u e r y ( ) 函 数 的 别 称 , () 函数是 jQuery() 函数的别称, ()jQuery()() 函数用于将任何对象包裹成 jQuery 对象,之后被允许调用定义在 jQuery 对象上的多个不同方法

  2. ( d o c u m e n t ) . r e a d y ( ) 是 个 什 么 函 数 ? 为 什 么 要 用 它 ? ( a n s w e r ) r e a d y ( ) 函 数 用 于 在 文 档 进 入 r e a d y 状 态 时 执 行 代 码 。 当 D O M 完 全 加 载 ( 例 如 H T M L 被 完 全 解 析 D O M 树 构 建 完 成 时 ) , j Q u e r y 允 许 你 执 行 代 码 。 使 用 (document).ready() 是个什么函数?为什么要用它?(answer) ready() 函数用于在文档进入ready状态时执行代码。当DOM 完全加载(例如HTML被完全解析DOM树构建完成时),jQuery允许你执行代码。使用 (document).ready()(answer)ready()readyDOMHTMLDOMjQuery使(document).ready()的最大好处在于它适用于所有浏览器,

ps:
原生js的window.onload要等dom元素加载完毕并且资源下载完从执行。并且编写的时候后面的会覆盖前面的。
但是
jquery只要dom元素加载完毕就开始执行,并且后面的不会覆盖前面的

3.$(this) 和 this 关键字在 jQuery 中有何不同
$(this) 返回一个 jQuery 对象,你可以对它调用多个 jQuery 方法,比如用 text() 获取文本,用 val() 获取值等等。
而 this 代表当前元素,它是 javascript 关键词中的一个,表示上下文中的当前 DOM 元素。你不能对它调用 jquery 方法,

4.你为什么要使用jQuery?你觉得jquery有哪些好处?
是轻量级的js框架,强大的选择器和出色的dom操作封装。
完善的ajax,可靠的事件处理机制,对浏览器兼容性好。

5.jQuery中的选择器吗,有哪些选择器
大致分为:基本选择器,层次选择器,表单选择器
基本选择器:id选择器,标签选择器,类选择器等
层次选择器:如:$(“form input”) 选择所有的form元素中的input元素 KaTeX parse error: Expected 'EOF', got '#' at position 3: ("#̲main > *")选择id为…(“tr:first”)选择所有tr元素的第一个 ( " t r : l a s t " ) 选 择 所 有 t r 元 素 的 最 后 一 个 表 单 选 择 器 : 如 : ("tr:last")选择所有tr元素的最后一个 表单选择器:如: ("tr:last")tr(":input")选择所有的表单输入元素 $(":text")选择所有的text的input元素

7.解决冲突
在这里插入图片描述
8.核心函数
$()就代表调用了jquery的核心函数,()可以接受一个函数,接收一个字符串(字符串选择器/代码片段/1个dom元素=>都会返回一个jQuery对象)

9.jQuery对象
jQuery对象是一个伪数组(是对象+有0到length-1属性,并且有length)

10.静态方法
静态方法:直接加给类的方法,静态方法通过类名来调用
在这里插入图片描述
实例方法:给这个类的原型属性添加方法,通过实例对象调用实例方法
在这里插入图片描述
11.each():回调函数第一个参数是index,第二个是value,没有返回值,可以遍历伪数组
forEach()不能遍历伪数组

$.each(arr,function(index,value){
})

12.map():回调函数第一个参数是index,第二个是value,有返回数组
原生map()不能遍历伪数组
jq的map()可以遍历伪数组
$…map(arr,function(index,value){
})

13.each()和map()的区别
each()默认返回是遍历谁就返回谁,
map()默认的返回是空数组

each()不支持在回调函数对遍历的数组进行处理
map()回调函数会把对遍历的数组执行函数之后返回新的数组

14.其他静态方法
$.isWindow()
$.isAarry()
$.trim()
$.isFuntion():JQuery本质是匿名函数
$.holdReady(true):作用暂停ready()的执行

15attr方法和prop方法区别

既然所有的DOM对象,都有一个attributes属性,而prop可以操作属性,所以也可以操作属性节点
官方推荐在操作属性节点时,具有 true 和 false 两个属性的属性节点,如 checked, selected 或者 disabled 使用prop(),其他的使用 attr()
因为如果具有 true 和 false 两个属性的属性节点,如果没有编写默认attr返回undefined,而prop返回false

16.事件绑定
在这里插入图片描述
注册多个相同/不同类型的事件,不会被覆盖,
高级浏览器可以通过addEventListener方法,但是低级浏览器不可以
可以通过attachEvent(“一定要加上on”,function(){})
封装addEvent()
function addEvent(dom,name,callBack){
if(dom.addEventListener){
dom.addEventListener(name,callBack)
}else{
dom.attachEvent(“on”+name,callBack)
}
}

17.事件解绑
off()如果不传参数就会移除所有的事件
off()如果传1个参数就移除指定类型的事件
off()如果传2个参数就移除指定类型的事件

18.冒泡事件和默认事件(提交表单给服务器会跳转到服务器,或者)
阻止冒泡事件方式:
方式1:在回调函数return false,
方式2:在事件函数传递参数e,e.stopPropagation();

阻止默认事件方式:
方式1:在回调函数return false,
方式2:在事件函数传递参数e,e.preventDefault();

19.自动触发事件
通过代码控制事件, 不用人为点击/移入/移除等事件就能被触发

自动触发事件方式
$(“selector”).trigger(“eventName”);
触发事件的同时会触发事件冒泡
触发事件的同时会触发事件默认行为

$(“selector”).triggerHandler(“eventName”);
触发事件的同时不会触发事件冒泡
触发事件的同时不会触发事件默认行为

20.自定义事件:自己起个名字通过on绑定事件,并且要响应事件(trigger/triggerHander)$(“selector”).on(“自己的名字”,function(){

})
( " s e l e c t o r " ) . t r i g g e r ( ) 或 者 ("selector").trigger()或者 ("selector").trigger()(“selector”).triggerHander()

21.事件命名空间:对同个对象有多个相同的事件,只想触发指定的事件
前提:事件是通过on绑定的事件,通过trigger或者triggerHander触发

 // 给父元素添加带命名空间事件
            $(".father").on("click.66", function () {
                alert("66 - father");
            });

            $(".father").on("click.nj", function () {
                alert("nj - 向左走");
左走");
         })

注意:如果用trigger触发子元素带命名空间的事件,那么父元素带相同命名空间的命名空间的事件也会被触发,而父元素没有命名空间的事件不会触发
如果用trigger触发子元素不带命名空间的事件,那么父元素不带命名空间和带命名空间的都会被触发

22.获取事件的坐标:当事件被触发时,系统会将事件对象(event)传递给回调函数,通过event对象我们就能获取时间的坐标

获取事件坐标有三种方式
event.offsetX, event.offsetY 相对于事件元素左上角
event.pageX, event.pageY 相对于页面的左上角
event.clientX, event.clientY 相对于视口的左上角

event.page和event.client区别
网页是可以滚动的,而视口是固定的
所以想获取距离可视区域坐标通过event.client
想获取距离网页左上角的坐标通过event.client

23.事件委托:请别人帮忙,再把反馈的结果给我们
格式:$(parentSelector).delegate(childrenSelector, eventName, callback)

 //li委托ul响应事件
        $("ul").delegate('li','click',function(){
            console.log($(this).html())
        })
    里面this的问题:因为点击的是li,li没有click事件,向上冒泡到了ul.ul有click事件。但是原本的事件行为是li触发的

js中事件委托的好处:
(1)减少监听数量
(2)新增元素自动有事件响应处理

24.html 、text
html: 获取第一个匹配元素的html内容,也就是第一个匹配元素的innerHTML
text: 获取所有符合元素的文本内容,也就是所有元素的textContent

25.获取图片的宽高

$(function () {
    var width = $("img").width();
    var height = $("img").height();
    console.log('width:',width);
    console.log('height:',height);
})

26.鼠标的移入和移出
移动到子元素会触发事件mouseover和mouseout
移动到子元素不会触发事件mouseenter和mouseleave(推荐)
hover()同时监听 移入和移出,第一个参数是监听移入函数,第二个是移出函数。
如果是只有1个参数就是监听移入和移出事件

27.index()、el()、get()
index()可以返回在dom元素在兄弟中排第几
el()可以返回当前对象被包装成jQuery对象
get()返回当前对象的dom元素的innerHTML

28.复制节点
clone([Even[,deepEven]])
浅复制不会复制节点的事件
深复制会复制节点的事件

29.$传入数据
$传入“”,null,undefined NaN 0 false,会返回一个空的jq对象
$传入字符串html代码片段:会将创建好的dom元素存储到jq对象中返回
$传入字符串选择器,会返回找到的所有元素存储到jq对象
$传入真数组和伪数组会将元素依次存储到jq对象中返回
$传入对象存储到jq对象中返回
$会将传的基本类型存储到jq对象中返回

30.jq基本结构
jq的本质是一个闭包=>目的:避免多个框架的冲突
jq通过window.xxxx= xxx让外部访问内部定义的变量
jq传递window的原因:方便压缩代码,提升查找效率
jq传递undefined的原因:方便压缩代码,IE9中undefined可以被修改,为了接收一个正确的undefined
jq.fn = jq.prototype

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
4S店客户管理小程序-毕业设计,基于微信小程序+SSM+MySql开发,源码+数据库+论文答辩+毕业论文+视频演示 社会的发展和科学技术的进步,互联网技术越来越受欢迎。手机也逐渐受到广大人民群众的喜爱,也逐渐进入了每个用户的使用。手机具有便利性,速度快,效率高,成本低等优点。 因此,构建符合自己要求的操作系统是非常有意义的。 本文从管理员、用户的功能要求出发,4S店客户管理系统中的功能模块主要是实现管理员服务端;首页、个人中心、用户管理、门店管理、车展管理、汽车品牌管理、新闻头条管理、预约试驾管理、我的收藏管理、系统管理,用户客户端:首页、车展、新闻头条、我的。门店客户端:首页、车展、新闻头条、我的经过认真细致的研究,精心准备和规划,最后测试成功,系统可以正常使用。分析功能调整与4S店客户管理系统实现的实际需求相结合,讨论了微信开发者技术与后台结合java语言和MySQL数据库开发4S店客户管理系统的使用。 关键字:4S店客户管理系统小程序 微信开发者 Java技术 MySQL数据库 软件的功能: 1、开发实现4S店客户管理系统的整个系统程序; 2、管理员服务端;首页、个人中心、用户管理、门店管理、车展管理、汽车品牌管理、新闻头条管理、预约试驾管理、我的收藏管理、系统管理等。 3、用户客户端:首页、车展、新闻头条、我的 4、门店客户端:首页、车展、新闻头条、我的等相应操作; 5、基础数据管理:实现系统基本信息的添加、修改及删除等操作,并且根据需求进行交流信息的查看及回复相应操作。
现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本微信小程序医院挂号预约系统就是在这样的大环境下诞生,其可以帮助管理者在短时间内处理完毕庞大的数据信息,使用这种软件工具可以帮助管理人员提高事务处理效率,达到事半功倍的效果。此微信小程序医院挂号预约系统利用当下成熟完善的SSM框架,使用跨平台的可开发大型商业网站的Java语言,以及最受欢迎的RDBMS应用软件之一的MySQL数据库进行程序开发。微信小程序医院挂号预约系统有管理员,用户两个角色。管理员功能有个人中心,用户管理,医生信息管理,医院信息管理,科室信息管理,预约信息管理,预约取消管理,留言板,系统管理。微信小程序用户可以注册登录,查看医院信息,查看医生信息,查看公告资讯,在科室信息里面进行预约,也可以取消预约。微信小程序医院挂号预约系统的开发根据操作人员需要设计的界面简洁美观,在功能模块布局上跟同类型网站保持一致,程序在实现基本要求功能时,也为数据信息面临的安全问题提供了一些实用的解决方案。可以说该程序在帮助管理者高效率地处理工作事务的同时,也实现了数据信息的整体化,规范化与自动化。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值