Я пытаюсь использовать Theia Sticky Sidebar на сайте, где я заменил jQuery необработанным JavaScript. Я обнаружил, что есть две важные реальности, которые меня смутили: старый плагин (v1.x) — это плагин jQuery, который ожидает jQuery и $.fn.theiaStickySidebar. Хосты CDN и более новые версии (v2.x+) предоставляют простой класс JS (TheiaStickySidebar) как модуль ES или сборку UMD. Я попробовал несколько подходов и застрял — боковая панель никогда не становится липкой, когда я пытаюсь использовать старый API в стиле jQuery с MicroJS. Ниже приведен минимальный воспроизводимый пример того, что я пробовал, и точные шаги.
Код: Выделить всё
.main { display:flex; max-width:1000px; margin:0 auto; }
.content { flex:1; min-height:1500px; padding:20px; background:#fff; }
.sidebar { width:300px; padding:20px; background:#eee; }
.theiaStickySidebar:after { content:""; display:table; clear:both; }
Main content...
Sidebar widgets...
document.addEventListener('DOMContentLoaded', function(){
new TheiaStickySidebar({
elements: '.content, .sidebar',
additionalMarginTop: 30
});
});
Они вообще не работают, но в их документации CDN сказано, что они будут работать без jquery: https://www.jsdelivr.com/package/npm/th ... ky-sidebar
Но когда я использую v1, они работают отлично.
`
Код: Выделить всё
jQuery(document).ready(function($) {
$('.sidebar').theiaStickySidebar({
'containerSelector': '.main-content-wrapper',
'additionalMarginTop': 30,
'additionalMarginBottom': 20,viewport
'minWidth': 901,
'disableOnResponsiveLayouts': true
});
});
`
Подробнее здесь: https://stackoverflow.com/questions/797 ... out-jquery
Мобильная версия