参考自你不需要jQuery,对其进行了更清晰的总结与分类,现代游览器基本都支持(ie10+以上),只整理了最简洁实用的原生代码,过分累赘的实现没有加入
元素获取
jQuery |
原生 |
$(selector) |
document.querySelectorAll(selector) |
$(el).find(selector) |
el.querySelectorAll(selector) |
$(el).prev() |
el.previousElementSibling |
$(el).next() |
el.nextElementSibling |
$(el).first() |
el.firstElementChild |
$(el).last() |
el.lastElementChild |
$(el).parent() |
el.parentNode |
$(el).offsetParent() |
el.offsetParent |
$(el).children() |
el.children |
$(el).siblings() |
Array.prototype.filter.call(el.parentNode.children, child => child !== el) |
dom操作
jQuery |
原生 |
$(el).before(htmlString) |
老api => el.insertAdjacentHTML('beforebegin', htmlString) 新api => el.before(string) |
$(el).after(htmlString) |
老api => el.insertAdjacentHTML('afterend', htmlString) 新api => el.after(string) |
$(parent).prepend(el) |
老api => parent.insertBefore(el, parent.firstChild) 新api => el.prepend(htmlString) |
$(parent).append(el) |
老api => parent.appendChild(el) 新api => el.append(htmlString) |
$(el).remove() |
老api => el.parentNode.removeChild(el) 新api => el.remove() |
$(el).clone() |
el.cloneNode(true) |
$(el).empty() |
el.innerHTML = '' |
$(el).replaceWith(string) |
el.outerHTML = string |
$(el).html(string) |
el.innerHTML = string |
$(el).text(string) |
el.textContent = string |
$(el).val(string) |
el.value = string |
$(el).html() |
el.innerHTML |
$(el).text() |
el.textContent |
$(el).val() |
el.value |
样式操作
jQuery |
原生 |
$(el).hasClass(className) |
el.classList.contains(className) |
$(el).addClass(className) |
el.classList.add(className) |
$(el).removeClass(className) |
el.classList.remove(className) |
$(el).toggleClass(className) |
el.classList.toggle(className) |
$(el).css(ruleName) |
getComputedStyle(el)[ruleName] |
$(el).css('width', '20px') |
el.style.width = '20px' |
属性操作
jQuery |
原生 |
$(el).attr('title') |
el.getAttribute('title') |
$(el).attr('title', string) |
el.setAttribute('title', string) |
位置/尺寸
jQuery |
原生 |
$(el).position() |
|
$(el).offset() |
el.getBoundingClientRect() |
$(el).outerWidth() |
el.offsetWidth |
$(el).outerHeight() |
el.offsetHeight |
$(el).scrollTop() |
el.scrollTop |
$(el).scrollLeft() |
el.scrollLeft |
特效
jQuery |
原生 |
$(el).hide() |
el.style.display = 'none' |
$(el).show() |
el.style.display = '' |
dom载入完毕
jQuery |
原生 |
$(方法) |
document.addEventListener('DOMContentLoaded', 方法) |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具