首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

jQuery VS JavaScript原生API

但JS原生API写法依旧;并且有时候只不过小写一个Demo,或者产品中只有少量的前端效果或DOM操作,就去花时间&空间引入jQuery,或者React?不免有取宰牛之刀以杀鸡之嫌。...在jQuery的温柔乡里,是否还能记得原生她javascript原生?如果仅为使用个选择器($)或者类似的东西,是否真的有必要加载jQuery?故此了解下JS常用原生写法还是蛮有必要的。...[update-2015-12-07]有看到抛弃jQuery,拥抱原生JavaScript一文中提到,jQuery 代表着传统的以 DOM 为中心的开发模式,但现在复杂页面开发流行的是以 React 为代表的以数据.../状态为中心的开发模式; React、Angular、Vue 等框架的流行,直接操作 DOM 不再是好的模式,jQuery 使用场景大大减少。...event] = handle; } } })(); 原生-DOM绑定事件-优化2 //DOM绑定事件-之惰性加载(调用方去触发BindEvent之时才去做初始化)// var BindEvent

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

    从零开始学 Web 之 jQuery(一)jQuery的概念,页面加载事件

    这些库还会把一些常用的代码进行封装。 把一些常用到的方法写到一个单独的 js 文件,使用的时候直接去引用这js文件就可以了,这个 js 文件就是 JavaScript 库。...3、hasClass 是否有某个类;removeClass 移除某个类;addClass 增加一个类。...3、jQuery对象.val();表示获取该对象 value 属性的值; 4、jQuery对象.val("值");表示设置该对象 value 属性的值; 四、页面加载事件 1、DOM中页面加载事件...特点:不是整个页面的所有元素,而是页面中的基本元素加载完后就执行,所以比使用 load 的方式快一些。...特点:不是整个页面的所有元素,而是页面中的基本元素加载完后就执行,所以比使用 load 的方式快一些。

    1.6K40

    (五)IntersectionObserver 监听元素进入离开指定可视区域

    IntersectionObserver 这个 api 来进行监听,使用方法如下 提供了一种异步观察目标元素与其祖先元素或顶级文档视窗(viewport)交叉状态的方法 1、生成观察器 可以在同一个观察者对象中配置监听多个目标元素...的时间到交叉被触发的时间的时间戳 },{ root:监听对象的参照dom元素,如果未传入值或值为null,则默认使用视窗(viewport) rootMargin:'npx,...'...如果使用回调来监视这些更改,则无需调用此方法。调用此方法会清除挂起的相交状态列表,因此不会运行回调。...intersectionObserver.takeRecords() 代码示例: 实现懒加载: const io = new IntersectionObserver(()=>{ // 实例化 默认基于当前视窗...// 停止观察当前元素 避免不可见时候再次调用callback函数 } }) } imgs.forEach((item)=>{ // io.observe接受一个DOM

    2.8K10

    01-老马jQuery教程-jQuery入口函数及选择器

    而且尽量屏蔽了浏览器的兼容性,而且提供了强大的可扩展性,成为了目前非常流行的前端开发框架之一。...因为window.onload事件是在页面的图片、第三方脚本、样式等都下载和加载完成后才会触发。而我们希望是页面的HTML的文档树对象可进行交互就立即绑定DOM的事件和做一些初始化工作。...所以之前的DOM时代的兼容代码 /** * @description 当页面的文档树加载完成后,可以进行交互就立即触发回调函数执行 * @param {function} callback -页面加载完成后调用的回调函数...//jQuery的构造函数: // 第一种用法:可以接受一个回调函数,回调就是在页面加载完成后执行。...,提供了方法css('styleName', 'value') // 如果传一个参数,代表获取,传两个参数代表设置。

    2.6K100

    快来领取,33个常用JavaScript功能已封装成方法,拿来即用

    在实际开发中,为了提高开发的效率,我们会把常用到的功能封装成方法,这样后期开发需要,拿来即用。 这里分享33个在实际开发中经常需要用到的功能(已封装成方法),分享给到大家。...1、加载js ||css || style const loadRes = function(name, type, fn) { // 加载js || css || style let ref if...const ajax = function(conf) { // ajax操作 let url = conf.url, data = conf.data, senData = [], // 封装后的数据...isForm) { // 如果data是对象,转换为字符串 for (var k in data) { senData.push(encodeURIComponent(k) + '='...== 0) { re = AA[a[0].charAt(i)] + BB[k % 4] + re } k++ } if (a.length > 1) { // 加上小数部分(如果有小数部分

    2.8K00

    js学习: 自定义类库 - miniQuery 2.0

    零基础打造自己的 js 类库(1) 写完后,我又陆陆续续地改了很多代码,继而有了下面这个版本,暂且就叫做miniQuery v2.0吧,嘿嘿。...简易ui : 额,目前只写了一个按钮 我利用零碎时间写了一个礼拜,没想到假模假式的也弄了不少方法了,当然,这些肯定是远远不够的。...不够以后写案例的时候我差不多就可以直接调用这个miniQuery.js了,主要方便了自己,如果觉得有必要,我就可以立即在里面添加新的方法,实现了订制功能。...主要还是用于培养兴趣,我本身不是做前端开发的,但是个人隐约感觉js在未来必定会火,当然现在也非常受欢迎了,我打算继续学下去。 首先来看看miniQuery怎么使用吧。...miniQuery) return; //如果本类库包装不了,就返回 if(miniQuery.length){ //如果是一个类数组元素的话,就获取他的长度

    1.7K70

    01-老马jQuery教程-jQuery入口函数及选择器

    而且尽量屏蔽了浏览器的兼容性,而且提供了强大的可扩展性,成为了目前非常流行的前端开发框架之一。...因为window.onload事件是在页面的图片、第三方脚本、样式等都下载和加载完成后才会触发。而我们希望是页面的HTML的文档树对象可进行交互就立即绑定DOM的事件和做一些初始化工作。...所以之前的DOM时代的兼容代码 /** * @description 当页面的文档树加载完成后,可以进行交互就立即触发回调函数执行 * @param {function} callback -页面加载完成后调用的回调函数...//jQuery的构造函数: // 第一种用法:可以接受一个回调函数,回调就是在页面加载完成后执行。...,提供了方法css('styleName', 'value') // 如果传一个参数,代表获取,传两个参数代表设置。

    2.4K00

    127个常用的JS代码片段,每段代码花30秒就能看懂(三)

    大家好,在前两篇文章里 127个常用的JS代码片段,每段代码花30秒就能看懂(一)和 127个常用的JS代码片段,每段代码花30秒就能看懂(二),我分享了前42段代码,今天我继续分享第三部分,希望对你的日常工作有所帮助...DOM元素是否包含指定的Class样式。...DOM节点后插入新的节点内容 const insertAfter = (el, htmlString) => el.insertAdjacentHTML('afterend', htmlString);...,然后根据处理后的数组,找出交集,最后从第一个数组中将对应的元素输出。...,感谢你的阅读,如果你喜欢我的分享,麻烦给个关注、点赞加转发哦,你的支持,就是我分享的动力,后续会持续分享剩余的代码片段,欢迎持续关注。

    47510

    127个常用的JS代码片段,每段代码花30秒就能看懂(三)

    大家好,在前两篇文章里 127个常用的JS代码片段,每段代码花30秒就能看懂(一)和 127个常用的JS代码片段,每段代码花30秒就能看懂(二),我分享了前42段代码,今天我继续分享第三部分,希望对你的日常工作有所帮助...DOM元素是否包含指定的Class样式。...DOM节点后插入新的节点内容 const insertAfter = (el, htmlString) => el.insertAdjacentHTML('afterend', htmlString);...,然后根据处理后的数组,找出交集,最后从第一个数组中将对应的元素输出。...,感谢你的阅读,如果你喜欢我的分享,麻烦给个关注、点赞加转发哦,你的支持,就是我分享的动力,后续会持续分享剩余的代码片段,欢迎持续关注。

    53140

    jQuery学习笔记之DOM操作、事件绑定(2)

    empty(): 清空节点 – 清空元素中的所有后代节点(不包含属性节点)。 复制节点 clone(): 克隆匹配的 DOM 元素, 返回值为克隆后的副本.....如果类名存在则删除它, 如果类名不存在则添加它。...判断是否含有某个样式:hasClass() — 判断元素中是否含有某个 class, 如果有, 则返回 true; 否则返回 false。...jQuery 5.jQuery 中的事件 在页面加载完毕后, 浏览器会通过 JavaScript 为...它需要等待页面上面所有元素都加载完毕,包括图片,src=“” $(function(){})只需要页面上面的dom元素绘制完毕之后就执行,不含图片或者第三方的连接地址… 事件绑定 我们除了可以直接为页面的元素增加事件

    1.5K10

    Valine 评论选填 url 跳转错误

    错误的跳转链接 据热心网友 @Zsedczy 反馈(滑稽)使用评论的时候的选填项url填写时如果包含 http(s):// 会导致链接跳转出错(valine会输出重复的 http(s):// url)...刚开始看了下源码,因为修改过所以以为是改了源码的问题,但其实是valine原本就存在的问题。...其实 Valine 默认是不输出 http:// 到 url 的,但是这本身会导致一个问题就是:如果不填(http(s)://)链接会以当前域名做跳转导致404,所以需要稍微调整一下。..._this.hasClass('reUrl')){ _this.addClass('reUrl'); let _thisLinkLen = _thisLink.length...移动端第一次点击链接不会跳转,第二次之后才会执行(遍历不会造成该问题) 0 该bug可用的解决方案 setTimeout一个定时器在定时器规定时间内查找并操作动态加载的dom直到操作完成,移除定时器。

    10610

    前端如何优雅处理类数组对象?

    接下来 Robin 开始一周愉快的学习啦~ 一周后,Leo 为 Robin 同学布置了学习作业,开发一个【人员搜索选择】的页面,效果大致如下: [Learn-Array-Liked-Objects-Demo.gif...] Robin 看完这个效果图后,一脸得意的样子,这确实不难呀~ 过几天后,Robin 带着自己写的代码,给 Leo 展示了她的代码,并疑惑的问到: [Learn-Array-Liked-Objects...然而,随着Web应用程序变得越来越强大,尤其一些新增加的功能例如:音频视频编辑,访问WebSockets的原始数据等,很明显有些时候如果使用JavaScript代码可以快速方便地通过类型化数组来操作原始的二进制数据将会非常有帮助...mapFn 可选如果指定了该参数,新数组中的每个元素会执行该回调函数。 thisArg 可选可选参数,执行回调函数 mapFn 时 this 对象。 返回值: 一个新的数组实例。.../index.html 六、总结 本文我们通过一个实际场景,详细介绍了类数组对象在实际开发中的使用,对于常见的类数组对象,我们还介绍了处理方式,能很大程度减少我们处理类数组对象的操作,将类数组统一转成数组

    1.3K30

    【JS】723- 前端如何优雅的处理类数组对象?

    接下来 Robin 开始一周愉快的学习啦~ 一周后,Leo 为 Robin 同学布置了学习作业,开发一个【人员搜索选择】的页面,效果大致如下: Robin 看完这个效果图后,一脸得意的样子,这确实不难呀...二、类数组对象介绍 2.1 概念介绍 所谓 类型化数组对象(简称类数组对象) 是一种类似数组的对象,它提供了一种用于访问原始二进制数据的机制。...然而,随着Web应用程序变得越来越强大,尤其一些新增加的功能例如:音频视频编辑,访问WebSockets的原始数据等,很明显有些时候如果使用JavaScript代码可以快速方便地通过类型化数组来操作原始的二进制数据将会非常有帮助...mapFn 可选如果指定了该参数,新数组中的每个元素会执行该回调函数。 thisArg 可选可选参数,执行回调函数 mapFn 时 this 对象。 返回值:一个新的数组实例。.../index.html 六、总结 本文我们通过一个实际场景,详细介绍了类数组对象在实际开发中的使用,对于常见的类数组对象,我们还介绍了处理方式,能很大程度减少我们处理类数组对象的操作,将类数组统一转成数组

    2K31
    领券