Resolve jQuery.fn.focus() event shorthand deprecation #259
Description
While updating an app to jQuery 3.3.x, I noticed a jQuery deprecation warning indicating the event shorthand methods have been deprecated. It seems there are no plans to ever remove them but they've been removed from the slim version of the package.
Even though there are no plans to actually remove the methods, does it makes sense to clear up the deprecation?
JQMIGRATE: jQuery.fn.click() event shorthand is deprecated
Cause: The .on() and .trigger() methods can set an event handler or generate an event for any event > type, and should be used instead of the shortcut methods. This message also applies to the other > event shorthands, including: blur, focus, focusin, focusout, resize, scroll, dblclick, mousedown, mouseup, mousemove, mouseover, mouseout, mouseenter, mouseleave, change, select, submit, keydown, keypress, keyup, and contextmenu.
Solution: Instead of .click(fn) use .on("click", fn). Instead of .click() use .trigger("click").
modified src/intercooler.js
@@ -733,7 +733,7 @@ var Intercooler = Intercooler || (function() {
}
function autoFocus(elt) {
- elt.find('[autofocus]').last().focus();
+ elt.find('[autofocus]').last().trigger('focus');
}