我需要 jQuery

2025-06-07

我需要 jQuery

你说“你不需要 jQuery”已经很久了,但它对于在用户脚本等中执行 DOM 操作仍然很有用。1

获取元素

Native 中,元素的 getter 方法种类太多,而且名字太长。jQuery
$()就是这样。

通过选择器获取元素

本国的

const viewport = document.querySelector('meta[name=viewport]');
Enter fullscreen mode Exit fullscreen mode

jQuery

const $viewport = $('meta[name=viewport]');
Enter fullscreen mode Exit fullscreen mode

通过选择器获取元素

本国的

const externalLinks = document.querySelectorAll('a[target=_blank]');
Enter fullscreen mode Exit fullscreen mode

jQuery

const $externalLinks = $('a[target=_blank]');
Enter fullscreen mode Exit fullscreen mode

按类别获取元素

本国的

const articles = document.getElementsByClassName('article');
Enter fullscreen mode Exit fullscreen mode

jQuery

const $articles = $('.article');
Enter fullscreen mode Exit fullscreen mode

通过 id 获取元素

本国的

const main = document.getElementById('main');
Enter fullscreen mode Exit fullscreen mode

jQuery

const $main = $('#main');
Enter fullscreen mode Exit fullscreen mode

通过名称获取元素

本国的

const buttons = document.getElementsByName('button');
Enter fullscreen mode Exit fullscreen mode

jQuery

const $buttons = $('[name=button]');
Enter fullscreen mode Exit fullscreen mode

通过标签名获取元素

本国的

const links = document.getElementsByTagName('a');
Enter fullscreen mode Exit fullscreen mode

jQuery

const $links = $('a');
Enter fullscreen mode Exit fullscreen mode

设置样式

在原生应用中,你无法同时为元素设置多个样式。但
在 jQuery 中jQuery.css()可以。

本国的

element.style['background-color'] = '#000000';
element.style['color'] = '#ffffff';
Enter fullscreen mode Exit fullscreen mode

jQuery

$element.css({
  'background-color': '#000000',
  'color': '#ffffff'
});
Enter fullscreen mode Exit fullscreen mode

从 HTML 字符串创建元素

在原生应用中,你需要使用长字符串来从 HTML 字符串创建元素。但
在 jQuery 中,$()可以。

本国的

const foo = document.createRange().createContextualFragment(`<div id="foo">Foo</div>`);
Enter fullscreen mode Exit fullscreen mode

jQuery

const $foo = $(`<div id="foo">Foo</div>`);
Enter fullscreen mode Exit fullscreen mode

设置显示状态

在原生中,需要重写 display 属性的值来改变元素的显示状态。
在 jQuery 中,有几种直观的方法。

显示元素

本国的

element.style.display = 'block';  //or 'inline', 'inline-block', 'inline-table'...
Enter fullscreen mode Exit fullscreen mode

jQuery

$element.show();
Enter fullscreen mode Exit fullscreen mode

隐藏元素

本国的

element.style.display = 'none';
Enter fullscreen mode Exit fullscreen mode

jQuery

$element.hide();
Enter fullscreen mode Exit fullscreen mode

切换显示

本国的

const elementIsShowing = element.ownerDocument.defaultView.getComputedStyle(element, null).display !== 'none';
element.style.display = elementIsShowing ? 'none' : 'block';  //or 'inline', 'inline-block', 'inline-table'...
Enter fullscreen mode Exit fullscreen mode

jQuery

$element.toggle();
Enter fullscreen mode Exit fullscreen mode

其他语言


  1. 在我自己的应用程序中,我将使用 Vue.js 等 。↩

文章来源:https://dev.to/munieru_jp/i-need-jquery-51dj
PREV
使用 Cypress 进行 API 测试:第一部分 - 设置 大家好!先决条件 Github 创建 Cypress 项目 创建我们的第一个测试目标 API
NEXT
您最喜欢的 Git 命令是什么?