首页
学习
活动
专区
圈层
工具
发布

jQuery 教程

click() click() 方法是当按钮点击事件被触发时会调用一个函数。 该函数在用户点击 HTML 元素时执行。...添加 click 事件之间要切换的两个或多个函数 trigger() 触发绑定到被选元素的所有事件 triggerHandler() 触发绑定到被选元素的指定事件上的所有函数 unbind() 从被选元素上移除添加的事件处理程序...它可注册多个回调函数到回调列表,调用回调列表并且传递异步或同步功能的成功或失败的状态。 延迟对象是可链接的,类似于一个 jQuery 对象可链接的方式,区别于它有自己的方法。...在创建一个 Deferred 对象之后,您可以使用以下任何方法,直接链接到通过调用一个或多个的方法创建或保存的对象。...方法 描述 $.Deferred() 返回一个链式实用对象方法来注册多个回调 deferred.always() 当Deferred(延迟)对象被受理或被拒绝时,调用添加的处理程序 deferred.done

21.1K20

jQuery学习笔记

|live() |为当前或未来的匹配元素添加一个或多个事件处理器 | |load() |触发、或将函数绑定到指定元素的 load 事件 | |mousedown...-- speed:规定了淡入淡出的延迟时间可取(slow/fast/毫秒数;即:缓慢的、快速的、延迟的) opacity:设置给定的不透明度(0~1) callback:完成执行后调用的函数名称...) 设置/樊湖表单字段的value 获取/设置属性 attr() 设置/返回所选元素的属性内容(支持多个属性设置,返回数组) 添加元素 append() 尾部插入元素 prepend() 开头插入元素...删除元素的class加载 empty() 删除被选元素的子元素 jQuery CSS 获取/设置 addClass() 向被选元素添加一个或多个Class类 removerClass() 从被选元素中删除指定的一个或多个...("classname":"value",……) 多个 jQuery 尺寸设置 ?

8.8K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    几分钟学会手搓防抖

    其核心思想是延迟函数执行,直到一段时间内没有新的触发事件发生,然后再执行该函数。 具体实现方式是通过设置一个定时器,在函数被触发时启动计时器,如果在指定的时间间隔内函数再次被触发,则重新计时。...举例来说,假设我们有一个输入框,用户每输入一个字符就会触发一个输入事件,我们希望在用户停止输入后的500毫秒再执行输入验证函数。...防抖的核心原理 防抖的核心原理是通过设置定时器来延迟函数的执行,在指定的时间间隔内,如果函数再次被触发,则重新计时。只有当定时器结束并且在间隔期间没有新的触发事件发生时,才执行函数。...用addEventListener方法为给按钮添加一个点击事件监听器,当按钮被点击就执行回调函数。 回调函数中有一个由setTimeout函数设置的定时器,延迟一秒后执行其中的回调函数。...dobounce函数执行完成返回一个匿名函数,addEventListener函数将返回的匿名函数绑定到按钮(btn)的点击事件上。

    59110

    Debounce 和 Throttle 的原理及实现

    Debounce DOM 事件里的 debounce 概念其实是从机械开关和继电器的“去弹跳”(debounce)衍生 出来的,基本思路就是把多个信号合并为一个信号。...现在,我们就来实现一个 debounce 函数。 实现 我们这个 debounce 函数接收两个参数,第一个是要“去弹跳”的回调函数 fn,第二个是延迟的时间 delay。...,这个闭包依然会被连续频繁地调用,但是在闭包内部,却限制了原始函数 fn 的执行,强制 fn 只在连续操作停止后只执行一次。...的使用方式如下: 1 2 3 $(document).on('mouvemove', debounce(function(e) { // 代码 }, 250)) 用例 还是以 mousemove 为例,为其绑定一个...在处理一些高频率触发的 DOM 事件的时候,它们都能极大提高用户体验。

    1.6K20

    JavaScript 中的防抖和节流

    防抖应用场景如下 搜索框输入查询,如果用户一直在输入中,没有必要不停地调用去请求服务端接口,等用户停止输入的时候,再调用,设置一个合适的时间间隔,有效减轻服务端压力。 表单验证 按钮提交事件。...浏览器窗口缩放,resize 事件 (如窗口停止改变大小之后重新计算布局) 等。...当最后一次停止触发后,由于定时器的 delay 延迟,可能还会执行一次函数。 节流中用时间戳或定时器都是可以的。...当然在 remaining 这段时间中如果又一次触发事件,那么会取消当前的计时器,并重新计算一个 remaining 来判断当前状态。 总结 函数防抖 将几次操作合并为一此操作进行。...原理是维护一个计时器,规定在 delay 时间后触发函数,但是在 delay 时间内再次触发的话,就会取消之前的计时器而重新设置。这样一来,只有最后一次操作能被触发。

    1.3K20

    彻底理清防抖(Debounce)和节流(Throttle)

    引言:前端有很多性能优化的方式,面对用户与网页的频繁交互,如输入框打字、按钮点击、滚动事件等,我们如何确保应用的响应既迅速又高效?...但是为了避免还没投完就出商品,售货机设计不是投完立即掉出商品,而是有一个短暂的延迟,在这个延迟期间,如果你再次投入硬币,售货机重新进入延迟,只有当延迟期过后,之前投入硬币才会被处理。...然后,设置一个新的timeout,如果在wait指定的时间内再次触发防抖函数,之前的定时器会被清除并重新设置,这意味着func的执行会被不断推迟。...我们绑定了一个防抖后的 showSuggestions 函数到这个事件上,这样当用户停止输入1500毫秒后,showSuggestions 函数才会执行,以此来模拟获取搜索建议的过程。....`); }};person.greet(); // 输出: Hello, my name is John.事件处理器:在事件驱动的编程中,如DOM事件处理,您可能需要在事件处理函数中引用绑定事件的元素

    1.6K10

    前端开发者都应知道的 jQuery 小技巧

    回到顶部按钮 预加载图片 检查图片是否加载完毕 自动修复损坏的图片 Hover 上的 Class 开关 禁用 input 字段 停止链接加载 淡入淡出/滑动开关 简单的折叠效果 将两个 Div 设为相同高度...在新窗口打开外部链接 找到文本元素 切换可视与隐藏的触发器 Ajax 调用的错误处理 链式操作 回到顶部按钮 通过使用 jQuery 中的 animate 和 scrollTop 方法...预加载图片 如果你的页面使用了大量不能初始可见的图片(例如绑定在 hover 上),预加载它们是十分有用的: $.preloadImages = function () { for...; } }); Ajax 调用的错误处理 当某次 Ajax 调用返回 404 或 500 错误,就会执行错误处理。但如果没有定义该处理,其他 jQuery 代码或许会停止工作。...error); }); 插件链式调用 jQuery 支持链式调用插件,以减缓反复查询 DOM,并创建多个 jQuery 对象。

    3.5K30

    C#5.0新增功能01 异步编程

    CPU 绑定示例:为游戏执行计算 假设你正在编写一个移动游戏,在该游戏中,按下某个按钮将会对屏幕中的许多敌人造成伤害。...此示例演示如何为一组 User 捕捉 userId 数据。...因为 LINQ 使用延迟的执行,因此异步调用将不会像在 foreach() 循环中那样立刻发生,除非强制所生成的序列通过对 .ToList() 或 .ToArray() 的调用循环访问。...请注意,未由代码显式调用的某些方法(如事件处理程序或 Web 控制器方法)并不一定适用。 由于它们未由代码显式调用,因此对其显式命名并不重要。 async void 应仅用于事件处理程序。...在 LINQ 表达式中使用异步 lambda 时请谨慎 LINQ 中的 Lambda 表达式使用延迟执行,这意味着代码可能在你并不希望结束的时候停止执行。

    3K20

    前端架构师之01_JQuery

    获取第一个子元素 :last-child 获取最后一个子元素 :only-child 如果当前元素是唯一的子元素,则匹配 :nth-last-child(index/even/odd/公式) 选择所有它们父元素的第.../odd/公式) 选择所有它们的父级元素的第n个子元素,计数从最后一个元素到第一个 带有“of-type” 与未带有“of-type”项的选择器有一定的区别。...语法 说明 on(events,[selector],[data],function) 在匹配元素上绑定一个或多个事件处理函数 off(events,[selector],[function]) 在匹配元素上移除一个或多个事件处理函数...'); // 绑定单次事件 $('div').one('click', function() { console.log('已完成1次单点击'); }); // 多个事件绑定同一个函数 $('div...参数type用于设置服务器返回的数据类型,如XML、JSON、HTML、TEXT等。 参数options用于设置Ajax请求的相关选项。

    3.1K00

    jQuery (二)

    绑定鼠标在进入的时候 mouseleave 绑定鼠标在离开的时候 $('p').bind('mouseenter mouseleave', f); 还可以使用英文句号,作为命名空间,这样方便对多个回调函数的管理...$('#my_form').submit(); // 模拟用户点击按钮进行提交 或者使用trigger $('button').trigger('click.ns1'); // 触发命名空间.ns1下的绑定函数...,实现发布订阅模型,先全体元素广播一个事件,在单击一个按钮的时候 $('#logoff').click(() => { $.event.trigger('logoff'); // 实现一个先全体元素广播一个事件...delay() 这会直接添加一个时间延迟到动画队列中。...,如果有多个方法,请直接使用前缀 如果有事件需要绑定,使用插件名作为命名空间,然后放在插件名中,即,不能使用全局的 如果插件需要使用data()方法关联数据 数据值要在一个对象中。

    10.8K30

    Ajax请求过程中显示“进度”的简单实现

    在进行Ajax调用过程中一般都具有这样的做法:显示一个GIF图片动画表明后台正在工作,同时阻止用户操作本页面(比如Ajax请求通过某个按钮触发,用户不能频繁点击该按钮产生多个并发Ajax请求);调用完成后...以下图为例,页面中通过一个Load链接以Ajax请求的方式加载数据(左)。...我们GIF图片和作为遮罩的定义在布局文件中,并为它们定制了相应的CSS。...Ajax调用的方法ajax2,该方法依然调用$.ajax(options)实现Ajax调用。...在调用$.ajax(options)进行Ajax请求之前,我们将GIF图片和遮罩显示出来,并且将其定位在正中央。遮罩的透明度进行了相应设置,所以会出现上图(中)的效果。

    2.5K90

    JavaScript 逆向爬虫中的浏览器调试常见技巧

    打开开发者工具 这里可以看到多个面板标签,如 Elements、Console、Sources 等,这就是开发者工具的一个个面板,功能丰富而又强大,先对面板作下简单的介绍: Elements:元素面板,...通常,我们会给按钮绑定一个点击事件,它的处理逻辑一般是由 JavaScript 定义的,这样在我们点击按钮的时候,对应的 JavaScript 代码便会执行。...可以想到,通过 Ajax 断点,使页面在获取数据的时候停下来,我们就可以顺着找到构造 Ajax 请求的逻辑了。 怎么设置呢?...点击 + 号,可以看到一行 Break when URL contains: 的提示,意思是当 Ajax 请求的 URL 包含填写的内容时,会进入断点停止,这里可以填写 /api/movie,如图所示。...前面我们讲过调用栈 Call Stack,通过调用栈是可以顺着找到前序调用逻辑的,所以顺着调用栈一层层找,也可以找到构造 Ajax 请求的逻辑,最后会找到一个叫作 onFetchData 的方法,如图所示

    3.1K51

    React基础(7)-React中的事件处理

    在Es5中,当调用一个函数时,函数名往往要加上一个圆括号,而在JSX 中给React元素绑定事件处理函数时,一个不小心,就习惯给加上了的 这就会造成,每次组件渲染时,这个函数都会被调用,会引起不必要的...,每隔一段时间滴一滴水的,从而节省资源 在代码中的体现就是:设置一定时器,让核心功能代码,隔间段的去执行 下面是一个鼠标滚轮,节流操作实现:类似连续操作的,都是如此,连续点击按钮,上拉加载 节流方式一:...,才发送Ajax请求 原理: 它是维护一个计时器,规定在duration(延迟)一定的时间后,触发事件处理函数,但是在duration时间内再次触发的话,都会清除当前的timer定时器重新计时,这样一来...组件内引入,调用一个throttle的函数,这个throttle接收两个参数,第一个参数是要触发的事件处理函数,第二个是延迟的时间,隔多少秒调用一次 下面是函数的节流代码,给定时间内被调用不能超过一次,...,在需要用它们的地方,通过import引入即可,在代码中直接调用就可以 在根目录下(以你自己的为准)创建一个throttle.js 通过export default 暴露出去 /* * @authors

    9.8K41

    React学习(七)-React中的事件处理

    在Es5中,当调用一个函数时,函数名往往要加上一个圆括号,而在JSX 中给React元素绑定事件处理函数时,一个不小心,就习惯给加上了的 这就会造成,每次组件渲染时,这个函数都会被调用,会引起不必要的...,每隔一段时间滴一滴水的,从而节省资源 在代码中的体现就是:设置一定时器,让核心功能代码,隔间段的去执行 下面是一个鼠标滚轮,节流操作实现:类似连续操作的,都是如此,连续点击按钮,上拉加载 节流方式一:...,才发送Ajax请求 原理: 它是维护一个计时器,规定在duration(延迟)一定的时间后,触发事件处理函数,但是在duration时间内再次触发的话,都会清除当前的timer定时器重新计时,这样一来...组件内引入,调用一个throttle的函数,这个throttle接收两个参数,第一个参数是要触发的事件处理函数,第二个是延迟的时间,隔多少秒调用一次 下面是函数的节流代码,给定时间内被调用不能超过一次,...,在需要用它们的地方,通过import引入即可,在代码中直接调用就可以 在根目录下(以你自己的为准)创建一个throttle.js 通过export default 暴露出去 /* * @authors

    8.6K40

    jQuery基础(五)一Ajax应用与常用插件-imooc

    selector).serialize() 其中selector参数是一个或多个表单中的元素或表单元素本身 例如,在表单中添加多个元素,点击“序列化”按钮后,调用serialize()方法,将表单中元素全部序列化...为服务器返回的数据类型,success为请求成功的执行的回调函数,type为发送数据请求的方式,默认为get 例如,点击页面中的“加载”按钮,调用ajax()方法向服务器请求加载一个txt文件,当请求成功时调用...([options])或$.ajaxSetup([options]) 可选项options参数为一个对象,通过该对象设置Ajax请求时的全局选项值 例如,先调用ajaxSetup()方法设置全局的Ajax...它们的调用格式为: $(selector).ajaxStart(function())和$(selector).ajaxStop(function()) 其中,两个方法中括号都是绑定的函数,当发送Ajax...参数为方法调用时的配置对象,根据该对象可以设置各种拖曳效果,如“containment”属性指定拖曳区域,“axis”属性设置拖曳时的坐标方向。

    19.2K20

    JS防抖与节流

    介绍 防抖和节流是两个JS中的概念,它们被广泛应用于被频繁触发的事件中,如搜索框在输入时会弹出候选列表:如果每次输入都发送一个AJAX请求来获取数据,那么后台就要被刷爆了。...防抖 在 x 秒内,无论调用多少次这个函数,它只会在最后一次调用的 x 秒后被真正执行。 在参考文章里举了这样一个例子: 一个小孩向妈妈要蛋糕,他的妈妈被弄烦了。...直到定时器被执行,timeout被重新设置成了undefined,才能进行下一轮操作。...span>0 加上点简单粗暴的样式: * { font-size: 1.2rem; } button { width: 200px; } 当然,还要把这些按钮的事件都绑定上...}, 500) } bind('b1', debounce) bind('b2', throttle) bind('b3', throttleDate) 这里的bind函数只是做了把指定id的元素绑定上一个回调函数

    1.2K10
    领券