A sizzlin' hot selector engine.
Go to file
2019-04-08 14:18:23 -04:00
build Release: Add jquery-release script 2019-01-14 18:32:35 +01:00
dist Release: Update version to 2.3.4 2019-04-08 14:18:23 -04:00
external Tests: Fix speed/index.html dependencies 2018-10-25 17:46:15 +02:00
speed Misc: Spelling fixes 2015-12-07 11:59:45 -05:00
src Selector: Stop using innerText in :contains 2019-01-14 19:21:20 +01:00
tasks Build: Verify that dist files are ASCII 2016-02-03 21:04:01 -05:00
test Selector: Stop using innerText in :contains 2019-01-14 19:21:20 +01:00
.bowerrc Use bower for speed framework dependencies. Add .bowerrc. 2013-08-27 14:59:05 -04:00
.editorconfig Build: Add ".editorconfig" file 2013-12-30 02:16:11 +04:00
.gitattributes Build: Normalize line endings 2014-04-14 11:32:53 -04:00
.gitignore Build: Commit bower dependencies, remove npm install script 2014-01-06 11:35:48 -08:00
.jscsrc Build: Update jscsrc 2014-04-15 17:59:45 +04:00
.jshintrc Build: Break down logic of grunt config 2013-12-30 02:16:04 +04:00
.mailmap Build: Update my name in .mailmap & AUTHORS.txt 2017-08-28 23:19:13 +02:00
.npmrc Build: Add .npmrc with save-exact=true 2016-05-24 14:49:13 +02:00
.travis.yml Build: Update Travis secure vars, reformat .travis.yml 2018-10-25 16:37:10 +02:00
AUTHORS.txt Release: Update AUTHORS.txt 2019-04-08 14:00:19 -04:00
bower.json Release: Update version to 2.3.4 2019-04-08 14:18:23 -04:00
changelog Release: Update version to 2.3.4 2019-04-08 14:18:23 -04:00
CONTRIBUTING.md Misc: Update jQuery Foundation to JS Foundation 2016-12-02 01:20:31 -05:00
Gruntfile.js Build: Update tested browsers, fix iOS configuration 2019-01-14 18:59:33 +01:00
LICENSE.txt Misc: Update jQuery Foundation to JS Foundation 2016-12-02 01:20:31 -05:00
package-lock.json Build: Update dependencies 2019-04-08 13:59:23 -04:00
package.json Release: Update version to 2.3.4 2019-04-08 14:18:23 -04:00
README.md Misc: Update jQuery Foundation to JS Foundation 2016-12-02 01:20:31 -05:00

Sizzle

A pure-JavaScript CSS selector engine designed to be easily dropped in to a host library.

Contribution Guides

In the spirit of open source software development, jQuery always encourages community code contribution. To help you get started and before you jump into writing code, be sure to read these important contribution guidelines thoroughly:

  1. Getting Involved
  2. JavaScript Style Guide
  3. Writing Code for jQuery Organization Projects

What you need to build Sizzle

In order to build Sizzle, you should have Node.js/npm latest and git 1.7 or later (earlier versions might work OK, but are not tested).

For Windows you have to download and install git and Node.js.

Mac OS users should install Homebrew. Once Homebrew is installed, run brew install git to install git, and brew install node to install Node.js.

Linux/BSD users should use their appropriate package managers to install git and Node.js, or build from source if you swing that way. Easy-peasy.

How to build Sizzle

Clone a copy of the main Sizzle git repo by running:

git clone git://github.com/jquery/sizzle.git

In the sizzle/dist folder you will find build version of sizzle along with the minified copy and associated map file.

Testing

  • Run npm install, it's also preferable (but not necessarily) to globally install grunt-cli package npm install -g grunt-cli
  • Open test/index.html in the browser. Or run npm test/grunt test on the command line, if environment variables BROWSER_STACK_USERNAME and BROWSER_STACK_ACCESS_KEY are set up, it will attempt to use Browserstack service (you will need to install java on your machine so browserstack could connect to your local server), otherwise PhantomJS will be used.
  • The actual unit tests are in the test/unit directory.

Developing with grunt

  • npm run build or grunt will lint, build, test, and compare the sizes of the built files.
  • npm start or grunt start can be run to re-lint, re-build, and re-test files as you change them.
  • grunt -help will show other available commands.