シングルクリックとダブルクリックとで処理を分けようとしても、ダブルクリックすると、onclickとondblclickの両方がこの順序で発生するので、不可分です。
例えば、
<script language=vbscript>
sub document_onclick()
document.body.innerText=document.body.innerText & vbCrLf & window.event.type
end sub
sub document_ondblclick()
document.body.innerText=document.body.innerText & vbCrLf & window.event.type
end sub
</script>
では、シングルクリックでonclickだけが動き、ダブルクリックでonclickとondblclickの両方が動きます。
では、どうすれば、シングルクリックでonclickだけを動かし、ダブルクリックでondblclickだけを動かすことができるのでしょうか?
もし、ondblclick、onclickの順序で発生するのであれば、onclickでondblclickが先に発生しているか調べることができます。
<script language=vbscript>
dim type1
sub document_onclick()
type1=window.event.type
'settimeout "sub1",createobject("wscript.shell").regread("HKCU\Control Panel\Mouse\DoubleClickSpeed")
settimeout "sub1",createobject("shell.application").GetSystemInformation("DoubleClickTime")
end sub
sub document_ondblclick()
type1=window.event.type
end sub
sub sub1()
document.body.innerText=document.body.innerText & vbCrLf & type1
end sub
</script>
ダブルクリック時間は外部オブジェクトを使わないと取れない?
HTAなら使えますが、IEではセキュリティの制約で難しいかも。