Dantes (обсуждение | вклад) Нет описания правки |
Dantes (обсуждение | вклад) Нет описания правки |
||
| Строка 1: | Строка 1: | ||
function insertMidiPlayer(fileUrl) { | |||
var container = document.createElement('div'); | |||
var button = document.createElement('button'); | |||
button.innerHTML = '▶ Играть MIDI'; | |||
button.onclick = function () { | |||
MIDI.Player.loadFile(fileUrl, function () { | |||
MIDI.Player.start(); | |||
}); | |||
}; | |||
container.appendChild(button); | |||
document.body.appendChild(container); | |||
} | |||
mw.loader.using(['jquery'], function () { | |||
var | function loadScript(url, callback) { | ||
var script = document.createElement('script'); | |||
script.src = url; | |||
script.onload = callback; | |||
document.head.appendChild(script); | |||
} | |||
loadScript('/wiki/MediaWiki:MIDI.js', function () { | |||
MIDI.loadPlugin({ | |||
soundfontUrl: '/wiki/MediaWiki:soundfont/', | |||
instrument: 'acoustic_grand_piano', | |||
onsuccess: function () { | |||
var midiLinks = document.querySelectorAll('a[href$=".mid"], a[href$=".midi"]'); | |||
for (var i = 0; i < midiLinks.length; i++) { | |||
(function (link) { | |||
var href = link.href; | |||
insertMidiPlayer(href); | |||
})(midiLinks[i]); | |||
} | |||
} | |||
}); | |||
}); | |||
}); | }); | ||
Версия от 17:14, 16 апреля 2025
function insertMidiPlayer(fileUrl) {
var container = document.createElement('div');
var button = document.createElement('button');
button.innerHTML = '▶ Играть MIDI';
button.onclick = function () {
MIDI.Player.loadFile(fileUrl, function () {
MIDI.Player.start();
});
};
container.appendChild(button);
document.body.appendChild(container);
}
mw.loader.using(['jquery'], function () {
function loadScript(url, callback) {
var script = document.createElement('script');
script.src = url;
script.onload = callback;
document.head.appendChild(script);
}
loadScript('/wiki/MediaWiki:MIDI.js', function () {
MIDI.loadPlugin({
soundfontUrl: '/wiki/MediaWiki:soundfont/',
instrument: 'acoustic_grand_piano',
onsuccess: function () {
var midiLinks = document.querySelectorAll('a[href$=".mid"], a[href$=".midi"]');
for (var i = 0; i < midiLinks.length; i++) {
(function (link) {
var href = link.href;
insertMidiPlayer(href);
})(midiLinks[i]);
}
}
});
});
});