<!DOCTYPE html>
<html>
<head>
<title>サンプル3(マウスで弾ける鍵盤)</title>
<meta http-equiv="X-UA-Compatible" content="requiresActiveX=true"/>
<meta charset="utf-8">
<style type="text/css">
.pink{background-color:pink;width:1000px;}
.hidden {visibility:hidden;width:0px;height:0px;
margin:0px;padding:0px;border-style:none;border-width:0px;
max-width:0px;max-height:0px;}
div#pianoupper {position: relative;color: #808080;height: 80px;}
div.hakken {position: absolute;
left: 0px;top: 0px;border-left: 1px solid;width: 112px;}
.hakken span {background-color: #fffdfa;
padding: 0px;margin: 0px;border: 1px solid;border-left: 0px;
display: inline-block;width: 27px;height: 66px;vertical-align: top;}
.hakken span.on {background-color: #aaa;}
div.kokken {position: absolute;
left: 0px;top: 0px;margin-left: 18px;width: 112px;}
.kokken span {position: relative;z-index: 1;background-color: #111;
padding: 0px;margin: 0px;border: 1px solid;
display: inline-block;width: 15px;height: 36px;
margin-right: 15px;vertical-align: top;}
.kokken span.on {background-color: #666;}
.kokken span.break {border: 0px;display: inline-block;
width: 1px;margin-right: 17px;visibility:hidden;}
</style>
</head>
<body>
<h1>サンプル3(マウスで弾ける鍵盤)</h1>
<object id="Jazz1" classid="CLSID:1ACE1618-1C7D-4561-AEE1-34842AA85E90" class="hidden">
<object id="Jazz2" type="audio/x-jazz" class="hidden">
<p style="visibility:visible;">This page requires <a href=http://jazz-soft.net>Jazz-Plugin</a> ...</p>
</object>
</object>
<div id=pianoupper>
<div class=kokken>
<span id=49></span><span id=51></span>
</div>
<div class=hakken>
<span id=48></span><span id=50></span><span id=52></span>
</div>
</div>
<br>
Sound: <select id=midiSnd onchange='changeSnd();'></select>
<script><!--
var Jazz = document.getElementById("Jazz1");
if(!Jazz || !Jazz.isJazz) Jazz = document.getElementById("Jazz2");
var gmidi=['Acoustic Grand Piano',...(中略)...'Gunshot'];
var current_snd=0;
var selSnd=document.getElementById("midiSnd");
for(var i in gmidi){
selSnd[i]=new Option(gmidi[i],i,!i,!i);
}
function changeSnd(){
current_snd=selSnd.options[selSnd.selectedIndex].value;
Jazz.MidiOut(0xc0,current_snd,0);
}
var key;
document.onmousedown=function(e){
var e=window.event || e;
var k;
if (e.target) k = e.target;
else if (e.srcElement) k = e.srcElement;
var m=parseInt(k.id);
if(k.id==m){
Jazz.MidiOut(0x90,m,0x7f);
k.className="on";
key=k;
}
}
document.onmouseup=function(e){
if(key){
var m=parseInt(key.id);
Jazz.MidiOut(0x80,m,0);
key.className="";
key="";
}
}
window.onload=function(){
Jazz.MidiOut(0x80,0,0);
}
--></script>
</body>
</html>