У меня есть этот код jQuery, который я изначально планировал использовать только один раз, но теперь выясняется, что я должен использовать его для нескольких экземпляров, но я не очень хорошо знаком с инкапсуляцией кода.Инкапсулировать блок jQuery для повторного использования
Так что мой вопрос, первый блок:
$('.share-checklist-trigger').click(function() {
$('body').addClass('no-overflow');
$(document).scrollTop(-1);
$('.widget-top-drawer.share-checklist-drawer').slideToggle(244, "linear").dimBackground({
darkness: 0.2
});
$('.widget-top-drawer-header').slideToggle(244, "linear").attr('style', 'display: flex;');
$('.dashboard-main').addClass('top-draw-out');
}).stop();
вещи, которые будут меняться от ссылки на объект в другой класс после основного класса .widget-top-drawer.share-checklist-drawer
, например, - .share-checklist-drawer
будет чем-то другим и основным селектором, например. - .share-checklist-trigger
что-то еще.
Как я могу превратить это в своего рода блок плагинов, чтобы я мог использовать его на нескольких объектах без повторного вставки одного и того же кода снова и снова?
Эй, @Rory McCrossan, спасибо за быстрый ответ. Проблема в том, что я использую этот блок кода, как и 8 раз. Вот почему я хотел инкапсулировать его. – snkv
Решение выше будет работать для всех тех 8 случаев. Вам просто нужно изменить начальный селектор, чтобы подбирать ваши элементы, например '$ ('. Share-checklist-trigger, .foo, .bar') ...' –
Можно ли как-то изменить сам триггер? Все в главном селекторе? – snkv