MediaWiki:Common.js: различия между версиями

упрощение
Метка: отменено
Ещё проще
Метка: отменено
Строка 164: Строка 164:


/* Функция для вставки Vimeo-видео на страницу для шаблона Vimeo, простая версия */
/* Функция для вставки Vimeo-видео на страницу для шаблона Vimeo, простая версия */
(function() {
$(function() {
    'use strict';
   
     function loadVimeoPlayers() {
     function loadVimeoPlayers() {
         var containers = document.querySelectorAll('.vimeo-player');
         $('.vimeo-player').each(function() {
       
             var $container = $(this);
        containers.forEach(function(container) {
             var videoId = $container.data('id');
             var videoId = container.getAttribute('data-vimeo-id');
             if (!videoId) return;
           
            var iframe = document.createElement('iframe');
            iframe.src = 'https://player.vimeo.com/video/' + videoId;
            iframe.width = '560';
            iframe.height = '315';
            iframe.frameBorder = '0';
            iframe.allow = 'autoplay; fullscreen; picture-in-picture';
            iframe.allowFullscreen = true;
              
              
             container.innerHTML = '';
             if (videoId && !$container.find('iframe').length) {
            container.appendChild(iframe);
                var iframe = $('<iframe>', {
                    src: 'https://player.vimeo.com/video/' + videoId,
                    width: '560',
                    height: '315',
                    frameborder: '0',
                    allow: 'autoplay; fullscreen; picture-in-picture',
                    allowfullscreen: true
                });
               
                $container.html(iframe);
            }
         });
         });
     }
     }
      
      
     if (document.readyState === 'loading') {
     // Загружаем сразу
        document.addEventListener('DOMContentLoaded', loadVimeoPlayers);
     loadVimeoPlayers();
     } else {
        loadVimeoPlayers();
    }
      
      
    // И при изменении контента
     mw.hook('wikipage.content').add(loadVimeoPlayers);
     mw.hook('wikipage.content').add(loadVimeoPlayers);
   
});
})();