mirror of
https://github.com/gosticks/DefinitelyTyped.git
synced 2025-10-16 12:05:41 +00:00
* [jquery] Introduce interface for `jQuery.fx`.
* [jquery] Attach `jQuery.Deferred` documentation to correct symbol.
* [jquery] Convert `jQuery.Callbacks` to an interface.
This change is purely for consistency with similar properties (e.g. `jQuery.Deferred`, `jQuery.Event`).
* [jquery] For `JQuery`, reduce examples to only those relevant to the overload and use shorter template for code-only examples.
* [jquery] For `JQueryStatic`, reduce examples to only those relevant to the overload and use shorter template for code-only examples.
* [jquery] For `JQuery.Event`, reduce examples to only those relevant to the overload and use shorter template for code-only examples.
* [jquery] For `JQuery.Callbacks`, reduce examples to only those relevant to the overload and use shorter template for code-only examples.
* [jquery] For `JQuery.PromiseBase`/`JQuery.Deferred`, reduce examples to only those relevant to the overload and use shorter template for code-only examples.
* [jquery] Consistent ordering.
* [jquery] Add `jQuery.getScript(options)`.
See https://github.com/jquery/api.jquery.com/issues/1052.
* [jquery] Fix documentation for this one overload of `jQuery.proxy`.
* [jquery] Accept `Document`, `Window`, and `JQuery.PlainObject` for the `element` parameter of Data APIs.
See
|
||
|---|---|---|
| .. | ||
| test | ||
| v1 | ||
| v2 | ||
| index.d.ts | ||
| jquery-tests.ts | ||
| README.md | ||
| tsconfig.json | ||
| tslint.json | ||
Usage
Global
When jQuery is globally available, you can use jQuery and $ directly.
Importing (with a global DOM available)
When you want to import jQuery as a module and have a global DOM available (e.g. browser and browser-like environments):
import jQuery = require('jquery');
Importing (without a global DOM available)
When you want to import jQuery as a module and do not have a global DOM available (e.g. Node.js environment):
import jQueryFactory = require('jquery');
const jQuery = jQueryFactory(window, true);
Note that while the factory function ignores the second parameter, it is required to get correct type declarations.
Project structure
- jquery-tests.ts
- Tests that exercise TypeScript-specific usage and cases not covered by other test files.
- test/example-tests.ts
- Tests generated from examples in jQuery documentation.
- test/longdesc-tests.ts
- Tests generated from non-example snippets in jQuery documentation.
- test/learn-tests.ts
- Tests imported from examples in jQuery Learning Center.
- test/jquery-window-module-tests.ts
test/jquery-slim-window-module-tests.ts- Tests importing jQuery with a DOM available
- test/jquery-no-window-module-tests.ts
test/jquery-slim-no-window-module-tests.ts- Tests importing jQuery without a DOM available
Authoring type definitions for jQuery plugins
$.fn is represented by JQuery.
$ is represented by JQueryStatic.
Declare an interface that has the plugin's overloads as call signatures and static members as properties.
interface MyPlugin {
settings: MyPluginSettings;
(behavior: 'enable'): JQuery;
(settings?: MyPluginSettings): JQuery;
}
interface MyPluginSettings {
title?: string;
}
Then declare a property on JQuery with your plugin's type.
interface JQuery {
myPlugin: MyPlugin;
}