Как написать $ .fn.functionName = (function () {в jQuery 3 - PullRequest
0 голосов
/ 03 мая 2018

У меня много функций, таких как: $.fn.functionName = (function() {

Я звоню им, используя: $(this).functionName();

Это не рекомендуется в jQuery 3, как я могу переписать определение функции, чтобы она работала хорошо (как и раньше).

Знаете ли вы библиотеку, которая способна (автоматически) заменить устаревший синтаксис jQuery? Есть инструмент миграции jquery: https://blog.jquery.com/2016/05/19/jquery-migrate-1-4-1-released-and-the-path-to-jquery-3-0/, но он мне не особо помогает.

Спасибо.

EDIT

Пример журнала из инструмента миграции jQuery 3:

JQMIGRATE: jQuery.fn.focus() event shorthand is deprecated

console.trace()

migrateWarn
jQuery.fn[name]
$.fn.functionName/this.initData
$.fn.functionName
<anonymous>
_onReady
$.obj

Ответы [ 2 ]

0 голосов
/ 03 мая 2018

Я использовал "livequery" (https://plugins.jquery.com/livequery/) и внутри него я вызывал $ .fn.functionName.

Я знаю, это старый код, но это была проблема. Как сказал Libern-M в комментарии, $ .fn.xxx не считается устаревшим. Я надеюсь, что это поможет и другим.

0 голосов
/ 03 мая 2018

Вам необходимо заменить jQuery.fn.blur() to jQuery.fn.trigger('blur') и jQuery.fn.focus() to jQuery.fn.trigger('focus') согласно этому https://github.com/mervick/emojionearea/issues/217,

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...