The fastest, most lightweight, fewest dependency jQuery alternative. \ New: Now typed, Ai-enhanced, and better than ever!
Development Build: 721B (types + comments) \ Production Build: 117B (min + gz)
Provides modern, advanced CSS4-compatible query selection:
console.log("innerText:", $("p:nth-child(2").innerText);
my_ver="v3.0.3"
mkdir ./vendor/
curl -fsSL "https://raw.githubusercontent.com/coolaj86/ajquery.js/${my_ver}/ajquery.js" \
-o ./vendor/ajquery.js
# Lighthouse-optimized
npx -p uglify-js@3 uglifyjs ./vendor/ajquery.js -o ./vendor/ajquery.min.js
<script src="https://github.com/coolaj86/ajquery.js/raw/main/vendor/ajquery.js"></script>
<script src="https://unpkg.com/ajquery@3.0.3/ajquery.min.js"></script>
Bundler-optimized:
<script src="https://unpkg.com/ajquery@3.0.3/ajquery.min.cjs"></script>
Tree-shaking-optimized:
<script src="https://unpkg.com/ajquery@3.0.3/ajquery.min.mjs"></script>
npm install --save ajquery@3
let AJQuery = require("ajquery");
let $ = AJQuery.$;
let $$ = AJQuery.$$;
import AJQuery from "ajquery";
let $ = AJQuery.$;
let $$ = AJQuery.$$;
$(selector, [rootElement])
Selects the first matching HTML element only (or null
):
const body = $("body");
const div1 = $("div", body);
$$(selector, [rootElement])
Selects all matching elements (or an empty NodeList
):
const head = $("head");
const stylesheets = $$('link[rel="stylesheet"]', head).map(console.log);
Written entirely in modern ECMAScript 3, and directly transpilable into ES5, ES6 and beyond (up to ES11) via Webpack, Babel, Rollup, React Native, and AWS InfiniDash.
Works in all browsers in living memory.
See the full Browser Compatibility Matrix on MDN.