mirror of
https://github.com/jquery/jquery.git
synced 2024-11-23 02:54:22 +00:00
Ajax: Deprecate AJAX event aliases, inline event/alias into deprecated
A new `src/deprecated` directory makes it possible to exclude some deprecated APIs from a custom build when their respective "parent" module is excluded without keeping that module outside of the `src/deprecated` directory or the `src/deprecated.js` file. Closes gh-4572
This commit is contained in:
parent
865469f5e6
commit
23d53928f3
@ -58,14 +58,15 @@ module.exports = function( grunt ) {
|
||||
|
||||
// Exclude specified modules if the module matching the key is removed
|
||||
removeWith: {
|
||||
ajax: [ "manipulation/_evalUrl", "event/ajax" ],
|
||||
ajax: [ "manipulation/_evalUrl", "deprecated/ajax-event-alias" ],
|
||||
callbacks: [ "deferred" ],
|
||||
css: [ "effects", "dimensions", "offset" ],
|
||||
"css/showHide": [ "effects" ],
|
||||
deferred: {
|
||||
remove: [ "ajax", "effects", "queue", "core/ready" ],
|
||||
include: [ "core/ready-no-deferred" ]
|
||||
}
|
||||
},
|
||||
event: [ "deprecated/ajax-event-alias", "deprecated/event" ]
|
||||
}
|
||||
}
|
||||
},
|
||||
|
@ -86,8 +86,7 @@ Some example modules that can be excluded are:
|
||||
- **deprecated**: Methods documented as deprecated but not yet removed.
|
||||
- **dimensions**: The `.width()` and `.height()` methods, including `inner-` and `outer-` variations.
|
||||
- **effects**: The `.animate()` method and its shorthands such as `.slideUp()` or `.hide("slow")`.
|
||||
- **event**: The `.on()` and `.off()` methods and all event functionality. Also removes `event/alias`.
|
||||
- **event/alias**: All event attaching/triggering shorthands like `.click()` or `.mouseover()`.
|
||||
- **event**: The `.on()` and `.off()` methods and all event functionality.
|
||||
- **event/trigger**: The `.trigger()` and `.triggerHandler()` methods. Used by the **alias** module.
|
||||
- **offset**: The `.offset()`, `.position()`, `.offsetParent()`, `.scrollLeft()`, and `.scrollTop()` methods.
|
||||
- **wrap**: The `.wrap()`, `.wrapAll()`, `.wrapInner()`, and `.unwrap()` methods.
|
||||
@ -143,7 +142,7 @@ grunt custom:-css
|
||||
Exclude a bunch of modules:
|
||||
|
||||
```bash
|
||||
grunt custom:-ajax,-css,-deprecated,-dimensions,-effects,-event/alias,-offset,-wrap
|
||||
grunt custom:-ajax/jsonp,-css,-deprecated,-dimensions,-effects,-offset,-wrap
|
||||
```
|
||||
|
||||
There is also a special alias to generate a build with the same configuration as the official jQuery Slim build is generated:
|
||||
|
@ -2,28 +2,8 @@ import jQuery from "./core.js";
|
||||
import slice from "./var/slice.js";
|
||||
import trim from "./var/trim.js";
|
||||
|
||||
import "./event/alias.js";
|
||||
|
||||
jQuery.fn.extend( {
|
||||
|
||||
bind: function( types, data, fn ) {
|
||||
return this.on( types, null, data, fn );
|
||||
},
|
||||
unbind: function( types, fn ) {
|
||||
return this.off( types, null, fn );
|
||||
},
|
||||
|
||||
delegate: function( selector, types, data, fn ) {
|
||||
return this.on( types, selector, data, fn );
|
||||
},
|
||||
undelegate: function( selector, types, fn ) {
|
||||
|
||||
// ( namespace ) or ( selector, types [, fn] )
|
||||
return arguments.length === 1 ?
|
||||
this.off( selector, "**" ) :
|
||||
this.off( types, selector || "**", fn );
|
||||
}
|
||||
} );
|
||||
import "./deprecated/ajax-event-alias.js";
|
||||
import "./deprecated/event.js";
|
||||
|
||||
// Bind a function to a context, optionally partially applying any
|
||||
// arguments.
|
||||
|
@ -1,8 +1,8 @@
|
||||
import jQuery from "../core.js";
|
||||
|
||||
import "../ajax.js";
|
||||
import "../event.js";
|
||||
|
||||
// Attach a bunch of functions for handling common AJAX events
|
||||
jQuery.each( [
|
||||
"ajaxStart",
|
||||
"ajaxStop",
|
42
src/deprecated/event.js
Normal file
42
src/deprecated/event.js
Normal file
@ -0,0 +1,42 @@
|
||||
import jQuery from "../core.js";
|
||||
|
||||
import "../event.js";
|
||||
import "../event/trigger.js";
|
||||
|
||||
jQuery.fn.extend( {
|
||||
|
||||
bind: function( types, data, fn ) {
|
||||
return this.on( types, null, data, fn );
|
||||
},
|
||||
unbind: function( types, fn ) {
|
||||
return this.off( types, null, fn );
|
||||
},
|
||||
|
||||
delegate: function( selector, types, data, fn ) {
|
||||
return this.on( types, selector, data, fn );
|
||||
},
|
||||
undelegate: function( selector, types, fn ) {
|
||||
|
||||
// ( namespace ) or ( selector, types [, fn] )
|
||||
return arguments.length === 1 ?
|
||||
this.off( selector, "**" ) :
|
||||
this.off( types, selector || "**", fn );
|
||||
},
|
||||
|
||||
hover: function( fnOver, fnOut ) {
|
||||
return this.mouseenter( fnOver ).mouseleave( fnOut || fnOver );
|
||||
}
|
||||
} );
|
||||
|
||||
jQuery.each( ( "blur focus focusin focusout resize scroll click dblclick " +
|
||||
"mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave " +
|
||||
"change select submit keydown keypress keyup contextmenu" ).split( " " ),
|
||||
function( _i, name ) {
|
||||
|
||||
// Handle event binding
|
||||
jQuery.fn[ name ] = function( data, fn ) {
|
||||
return arguments.length > 0 ?
|
||||
this.on( name, null, data, fn ) :
|
||||
this.trigger( name );
|
||||
};
|
||||
} );
|
@ -1,23 +0,0 @@
|
||||
import jQuery from "../core.js";
|
||||
|
||||
import "../event.js";
|
||||
import "./trigger.js";
|
||||
|
||||
jQuery.each( ( "blur focus focusin focusout resize scroll click dblclick " +
|
||||
"mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave " +
|
||||
"change select submit keydown keypress keyup contextmenu" ).split( " " ),
|
||||
function( _i, name ) {
|
||||
|
||||
// Handle event binding
|
||||
jQuery.fn[ name ] = function( data, fn ) {
|
||||
return arguments.length > 0 ?
|
||||
this.on( name, null, data, fn ) :
|
||||
this.trigger( name );
|
||||
};
|
||||
} );
|
||||
|
||||
jQuery.fn.extend( {
|
||||
hover: function( fnOver, fnOut ) {
|
||||
return this.mouseenter( fnOver ).mouseleave( fnOut || fnOver );
|
||||
}
|
||||
} );
|
1
src/jquery.js
vendored
1
src/jquery.js
vendored
@ -24,7 +24,6 @@ import "./ajax/jsonp.js";
|
||||
import "./ajax/load.js";
|
||||
import "./core/parseXML.js";
|
||||
import "./core/parseHTML.js";
|
||||
import "./event/ajax.js";
|
||||
import "./effects.js";
|
||||
import "./effects/animatedSelector.js";
|
||||
import "./offset.js";
|
||||
|
Loading…
Reference in New Issue
Block a user