私が作ったプレイヤーと財団標準MP3プレイヤーとの比較は下記ページをお願いします。
音楽を流す直った
これが財団の標準プレイヤーが呼び出している大元のコードのコピペです。
<!DOCTYPE html> <html lang="ja"> <head> <meta charset="utf-8" /> <title>MP3プレーヤー</title> <!-- Created by James Kanjo 2009 Edited by Dr Devan 2014 --> </head> <body> <script type="text/javascript" src="http://ko.scp-wiki.net/local--files/component%3Aaudio/audio-player.js"></script> <script type="text/javascript"> var url_params = /^#([^#]*)(#autoplay)?$/; var match = url_params.exec(unescape(window.location.hash)); if (match) { document.write('<audio controls '); if (match[2]) { document.write('autoplay'); } document.write(' style="width: 300px; height: 30px;"><source src="' + match[1]); document.write('" type="audio/mpeg">'); document.write('<object type="application/x-shockwave-flash" data="http://ko.scp-wiki.net/local--files/component%3Aaudio/player.swf" id="audioplayer1" height="24" width="290">'); document.write('<param name="movie" value="http://ko.scp-wiki.net/local--files/component%3Aaudio/player.swf">'); document.write('<param name="FlashVars" value="playerID=1&soundFile=' + match[1]); if (match[2]) { document.write('&autostart=yes'); } document.write('">'); document.write('<param name="quality" value="high">'); document.write('<param name="menu" value="false">'); document.write('<param name="wmode" value="transparent">'); document.write('<i>Flash has been disabled, or is not installed. This MP3 player requires <a target="_blank" href="http://get.adobe.com/flashplayer/">Flash</a> to function.</i>'); document.write('</object>'); document.write('</audio>'); } else document.write('<i>Invalid URL syntax</i>'); </script> <noscript> <i>Your Javascript has been disabled. This MP3 player requires Javascript to function.</i> </noscript> </body> </html>
こいつは呼び出された時に
自身のURL(http://ja.scp-wiki.net/local--code/component:audio) + #"音楽ファイルのURL" + "自動再生の設定"
というURLになっているかどうかで音楽を再生します。
例えば「http://shitake-crude-production.wikidot.com/local--files/audioplay/Chopin-Poronase-Heroic.mp3」という音楽ファイルを流す際は[[iframe http://ja.scp-wiki.net/local--code/component:audio#http://shitake-crude-production.wikidot.com/local--files/audioplay/Chopin-Poronase-Heroic.mp3 frameborder="0" scrolling="no" width="320px" height="40px"]]
という呼び出し方をします。自動再生をする際は
[[iframe http://ja.scp-wiki.net/local--code/component:audio#http://shitake-crude-production.wikidot.com/local--files/audioplay/Chopin-Poronase-Heroic.mp3#autoplay frameborder="0" scrolling="no" width="320px" height="40px"]]
という呼び出し方をします。
Wiki構文にある
[[include component:audio-player
|URL=mp3-url
]]とは上記のiframeを生成するinclude文です。
本当の改善点
1.Wiki構文でのMP3プレイヤーが動かないのは読み込んでいるファイルが原因です。
2.本来備わっていたはずのautoplay(ページ読み込み時に自動演奏)の機能が死んでいたので、これが機能するように直す必要があります
3.どうせ直ってもサンドボックスじゃ動きません
修正案です
財団標準プレイヤー一層目:
http://ja.scp-wiki.net/component:audio-player[[include component:audio-player-base
|URL={$URL}
|autoplay={$autoplay_{$autoplay}}
|autoplay=false
|autoplay_TRUE={$autoplay_true} |autoplay_True={$autoplay_true} |autoplay_yes=>
{$autoplay_true} |autoplay_YES={$autoplay_true} |autoplay_Yes={$autoplay_true}
|autoplay_{$autoplay}={$autoplay_false}
|autoplay_true=#autoplay |autoplay_false=[!----]
]]修正
↓[[include component:audio-player-base
|URL={$URL}
|autoplay2={$autoplay_{$autoplay}}
|autoplay = {$autoplay}
|autoplay = false
|autoplay_TRUE={$autoplay_true} |autoplay_True={$autoplay_true} |autoplay_yes=
{$autoplay_true} |autoplay_YES={$autoplay_true} |autoplay_Yes={$autoplay_true}
|autoplay_true=#autoplay |autoplay_false=[!----]
]]財団標準プレイヤー2層目:
http://ja.scp-wiki.net/component:audio-player-base[[iframe http://ja.scp-wiki.net/local--code/component:audio#{$URL}{$autoplay} frameborder="0" scrolling="no" width="320px" height="40px"]]
修正
↓[[iframe http://ja.scp-wiki.net/local--code/component:audio#{$URL}{$autoplay2} frameborder="0" scrolling="no" width="320px" height="40px"]]]
by C-take