ふと、onclickはtableタグでも使えるのか疑問に思ったのでググってみた。
MSDNがヒットした。(怪しいことが書いてあるけど・・・)
以下のタグでonclickイベントを使用できるとの事。
ん、tableタグはOK。これで、グリッドオブジェクトが作成できる。
A, ADDRESS, APPLET, AREA, B, BIG, BLOCKQUOTE, BODY, BUTTON, CAPTION, CENTER, CITE, CODE, DD, DFN, DIR, DIV, DL, DT, EM, EMBED, FIELDSET FONT, FORM, H1, H2, H3, H4, H5, H6, HR, I, IMG, INPUT, KBD, LABEL, LEGEND, LI, LISTING, MAP, MARQUEE, MENU, OBJECT, OL, OPTION, P, PLAINTEXT, PRE, S, SAMP, SELECT, SMALL, SPAN, STRIKE, STRONG, SUB, SUP, TABLE, TBODY, TD, TEXTAREA, TFOOT, TH, THEAD, TR, TT, U, UL, VAR, XMP, document
んで、試してみた。table,tr,td/thタグにonclickを設定して、alertを出してみる。
すると、td/thタグ→trタグ→tableタグの順にイベントが発生した。
これは、結構便利かも。tdタグのonclickを消すと、trタグやtableタグで受け取ってもらえる!
onclickありthタグ | onclickなしthタグ |
onclickありtdタグ |
tdタグonclickなし |
<table onclick="alert('table click')" border="1">
<tbody>
<tr onclick="alert('tr click')"><th onclick="alert('th click')">thタグ</th></tr>
<tr onclick="alert('tr click')"><td onclick="alert('td click')">tdタグ</td></tr>
</tbody>
</table>
ということは、入れ子のdivタグも同じく外側のdivタグで拾ってもらえるのか?
試してみる。
onclickありdivタグ
onclickなしdivタグ
<div onclick="alert('外側div click')">
<div onclick="alert('内側div click')">onclickありdivタグ</div>
<div>onclickなしdivタグ</div>
</div>
どうでしょう?ちゃんと拾ってくれますね。
これなら、Windowオブジェクトが作れそうだ。
目指せ、Wizardry for Ajax!!
おまけ。
hrタグにonclickイベントを発行して何に使えるのか?
うまくマウスカーソルを合わすのが難しいけど、線をクリックするとちゃんと発行される・・・。
最近のコメント