Лучший способ Расширить Плагин jQuery

Я - довольно новый пользователь jQuery, надеющийся расширять существующий плагин jQuery, который делает приблизительно 75% того, в чем я нуждаюсь. Я попытался сделать свою домашнюю работу на этом. Я проверил следующие вопросы на stackoverflow:

Я читал на расширять методе. Однако вся thise домашняя работа оставила меня смущенным. Я работаю с fullcalendar плагином и потребностью изменить часть поведения, а также добавить новые рычаги события. Застревают я с выполнением этого в самом сменном закрытии? Я пропускаю что-то очевидное?

Идеально мы смогли бы разделить наш код от сменного кода для обеспечения возможного обновления. Любая справка значительно ценилась бы, особенно указатели на том, где я пропускаю некоторую информацию или мнения о том, имеют ли решения, уже представленные в других вопросах о Переполнении стека, смысл. Мне они противоречат друг другу, и меня все еще оставляют смущенным.

76
задан Community 23 May 2017 в 12:26
поделиться

2 ответа

$.fn.APluginName=function(param1,param2)
{
  return this.each(function()
    {
      //access element like 
      // var elm=$(this);
    });
}

// sample plugin
$.fn.DoubleWidth=function()
  {
    return this.each(function()
      {
        var _doublWidth=$(this).width() * 2;
        $(this).width(_doubleWidth);
      });
  }

//

<div style="width:200px" id='div!'>some text</div>

// используя пользовательский плагин

$('#div1').DoubleWidth();

/// Вышеписанный тип Utils обычно работает элементами DOM ///////////////// Таможенные UTILS

(function($){
  var _someLocalVar;
  $.Afunction=function(param1,param2) {
    // do something
  }
})(jquery);

// Доступ выше UTIL AS

$.Afunction();

// Этот тип UTIL обычно расширяет JavaScript

2
ответ дан 24 November 2019 в 11:21
поделиться

IVE обнаружил, что с большим количеством плагинов методы защищены / частные (т.е. в объеме замыкания). Если вам нужно изменить функциональность методов / функций, то вы не повезло, если вы не готовы вспомогаться. Теперь, если вам не нужно менять какие-либо из этих методов / функций, вы можете использовать $. Расширется ($. Fn.pluginname, {/ * ваши методы / свойства * /};

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

Что все это действительно сводится к тому, как плагин, который вы хотите расширить, кодируется.

3
ответ дан 24 November 2019 в 11:21
поделиться
Другие вопросы по тегам:

Похожие вопросы: