MediaWiki:Common.js: различия между версиями
пока отставлю, не прорисовается корректно Метка: ручная отмена |
А так? Без query? Метка: отменено |
||
| Строка 161: | Строка 161: | ||
})(); | })(); | ||
/* Vimeo Player для absurdopedia.wiki */ | |||
function initVimeoPlayers() { | |||
var allElements = document.getElementsByTagName('*'); | |||
var vimeoPlayers = []; | |||
for (var i = 0; i < allElements.length; i++) { | |||
if (allElements[i].className && allElements[i].className.indexOf('vimeo-player') !== -1) { | |||
vimeoPlayers.push(allElements[i]); | |||
} | |||
} | |||
for (var j = 0; j < vimeoPlayers.length; j++) { | |||
var player = vimeoPlayers[j]; | |||
var videoId = player.id.replace('vimeo-', ''); | |||
var hasIframe = false; | |||
for (var k = 0; k < player.children.length; k++) { | |||
if (player.children[k].tagName === 'IFRAME') { | |||
hasIframe = true; | |||
break; | |||
} | |||
} | |||
if (videoId && !hasIframe) { | |||
// Создаем iframe | |||
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; | |||
iframe.style.display = 'block'; | |||
player.innerHTML = ''; | |||
player.appendChild(iframe); | |||
} | |||
} | |||
} | |||
if (document.readyState === 'loading') { | |||
document.addEventListener('DOMContentLoaded', initVimeoPlayers); | |||
} else { | |||
initVimeoPlayers(); | |||
} | |||
if (typeof mw !== 'undefined' && mw.hook && mw.hook('wikipage.content').add) { | |||
mw.hook('wikipage.content').add(initVimeoPlayers); | |||
} | |||