ondblclick属性はユーザーが当該要素をマウスやノートパソコン等に付属しているトラックパッドなどのポインティングデバイス(pointing device)の左ボタンで続けて2回押した際(2回連続で左クリックを実行した時)に起動するスクリプトを指定するイベント属性(イベントハンドラ)です。左ボタンを2回連続で押す間隔は、システムのダブルクリックのスピード設定によります。
このイベント属性の注意点等、詳しいことは類似の onclick属性を参照してください。
また、ondblclick属性と同じ左ボタンの2回連続押しの動作によりイベントを発生させる属性に、onclick属性と onmousedown属性, onmouseup属性があります。これらの属性を ondblclick属性と併せてひとつの要素に指定している場合、左ボタンを2回連続で押す動作を行うと、Netscape, Firefox, Opera, Safari では onmousedown→onmouseup→onclick→onmousedown→onmouseup→ondblclick の順にイベントが発生します。Internet Explorer のみイベント発生順序が異なり、onmousedown→onmouseup→onclick→onmousedown→ondblclick→onmouseup の不規則な順でイベントが発生します。どの UA においても2回連続でボタンを押した時の2回目の onclick属性のイベントは無効になるようです。
onmousedown属性onmouseup属性onclick属性onmousedown属性onmouseup属性(IEのみ:ondbliclick属性)ondblclick属性(IEのみ:onmouseup属性)次のスクリプトでは、ondblclick属性と onmousedown属性を組み合わせて、左ボタンの2回連続押しで、表の行の背景色をオレンジ色に塗るイベントが発生します。そして、オレンジ色になっている表の行をポインティングデバイスの左・右いずれかのボタンを押すことで、組み合わせていた onmousedown属性のイベントが発生し元の色に戻します。
<script type="text/javascript">
var normalColor = "transparent";
var selectedColor = "orange";
function dbcl(obj, row) {
obj.style.backgroundColor=selectedColor;
col[row] = 1; }
function onecl(obj, row) {
obj.style.backgroundColor=normalColor;
col[row] = 0; }
</script>
......
<table border="1">
<caption>名字ランキング</caption>
<tr><th>順位</th><th>氏名</th><th>世帯数</th></tr>
<tr ondblclick="dbcl(this,0)" onmousedown="onecl(this,0)">
<td>1</td><td>佐藤(さとう)</td><td>45x,xxx</td></tr>
<tr ondblclick="dbcl(this,1)" onmousedown="onecl(this,1)">
<td>2</td><td>鈴木(すずき)</td><td>40x,xxx</td></tr>
<tr ondblclick="dbcl(this,2)" onmousedown="onecl(this,2)">
<td>3</td><td>高橋(たかはし)</td><td>33x,xxx</td></tr>
<tr ondblclick="dbcl(this,3)" onmousedown="onecl(this,3)">
<td>4</td><td>田中(たなか)</td><td>31x,xxx</td></tr>
<tr ondblclick="dbcl(this,4)" onmousedown="onecl(this,4)">
<td>5</td><td>渡辺(わたなべ)</td><td>25x,xxx</td></tr>
</table>