jQuery歴3週間の俺がjQueryUIを使わずにに対してtooltipを付けてみた
とりあえず、ソースを晒しておく
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>jQuery tooltip TEST</title> <style type="text/css"> td { width: 12em; border-style: solid; border-width:1px; border-color: #000000; } div.cell { position:relative; height: 1.4em; } .error { background-color: #eebbbb; } .normal { background-color: #eeffff; } span.value { position: absolute; top: 0px; left: 0px; } span.tooltip { position: absolute; display: none; border-style: solid; border-width:1px; border-color: #000000; background-color: #ffffe1; font-size:small; padding:0.2em; z-index:999; top: 4px; left: 4px; } </style> </head> <body> <table> <tr> <td class="error"><div class="cell"><span class="value">エラーを含む値です</span><span class="tooltip">エラーだってよ</span></div></td> <td class="error"><div class="cell"><span class="value">エラーを含む値っぽい</span><span class="tooltip">エラーだってさ</span></div></td> <td class="normal"><div class="cell"><span class="value">ちょ、正常らしいぞ</span></div></td> <td class="error"><div class="cell"><span class="value">エラーを含む値らしい</span><span class="tooltip">エラーらしいぜ</span></div></td> </tr> </table> <script language="javascript" type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.js"></script> <script language="javascript" type="text/javascript"> $(function() { $("td.error").hover(function() { $(this).find("span.tooltip").show(); }, function() { $(this).find("span.tooltip").hide(); }); }); </script> </body> </html>
キモは
CSS : positionの「absolute」「relative」「fixed」のリファレンス | CSS Lectureで知った
"position: relative;"の中の"position: absolute;"は外側起点の相対位置指定になること
超重要参考文献
- 作者: まつもとゆきひろ,西尾泰和,山田憲晋,城戸忠之,増井俊之,羽生章洋,uupaa,ミック,塙与志夫,原悠,奥一穂,はまちや2,大沢和宏,吾郷協,浜本階生,中島拓,中島聡,矢野りん,角田直行,能登信晴,田村哲也,吉村譲,結城亜砂子,角谷信太郎,石橋秀仁,WEB+DB PRESS編集部
- 出版社/メーカー: 技術評論社
- 発売日: 2010/12/22
- メディア: 大型本
- 購入: 12人 クリック: 185回
- この商品を含むブログ (24件) を見る
ちなみに第1特集の「プログラマが知るべき言語設計の基礎知識」は超大作なので読んでおいて損はないです。