jQuery Tooltip


jQuery Tooltip 插件取代了原生的工具提示框,让它们可自定义,您只需要调整它们的内容、位置和外观即可。

该插件目前版本是 1.3,已经很长时间没有更新,推荐使用 jQuery UI 工具提示框(Tooltip)。

访问 jQuery Tooltip 官网

jQuery Tooltip 插件演示。

  1. <!doctype html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <title>jQuery Tooltip 插件</title>
  6.  
  7. <link rel="stylesheet" href="http://jquery.bassistance.de/tooltip/jquery.tooltip.css" />
  8. <link rel="stylesheet" href="http://jquery.bassistance.de/tooltip/demo/screen.css" />
  9. <script src="http://jquery.bassistance.de/tooltip/lib/jquery.js" type="text/javascript"></script>
  10. <script src="http://jquery.bassistance.de/tooltip/lib/jquery.bgiframe.js" type="text/javascript"></script>
  11. <script src="http://jquery.bassistance.de/tooltip/lib/jquery.dimensions.js" type="text/javascript"></script>
  12. <script src="http://jquery.bassistance.de/tooltip/jquery.tooltip.js" type="text/javascript"></script>
  13.  
  14. <script src="http://jquery.bassistance.de/tooltip/demo/chili-1.7.pack.js" type="text/javascript"></script>
  15.  
  16. <script type="text/javascript">
  17. $(function() {
  18. $('#set1 *').tooltip();
  19.  
  20. $("#foottip a").tooltip({
  21. bodyHandler: function() {
  22. return $($(this).attr("href")).html();
  23. },
  24. showURL: false
  25. });
  26.  
  27. $('#tonus').tooltip({
  28. delay: 0,
  29. showURL: false,
  30. bodyHandler: function() {
  31. return $("<img/>").attr("src", this.src);
  32. }
  33. });
  34.  
  35. $('#yahoo a').tooltip({
  36. track: true,
  37. delay: 0,
  38. showURL: false,
  39. showBody: " - ",
  40. fade: 250
  41. });
  42.  
  43. $("select").tooltip({
  44. left: 25
  45. });
  46.  
  47. $("map > area").tooltip({ positionLeft: true });
  48.  
  49. $("#fancy, #fancy2").tooltip({
  50. track: true,
  51. delay: 0,
  52. showURL: false,
  53. fixPNG: true,
  54. showBody: " - ",
  55. extraClass: "pretty fancy",
  56. top: -15,
  57. left: 5
  58. });
  59.  
  60. $('#pretty').tooltip({
  61. track: true,
  62. delay: 0,
  63. showURL: false,
  64. showBody: " - ",
  65. extraClass: "pretty",
  66. fixPNG: true,
  67. left: -120
  68. });
  69.  
  70. $('#right a').tooltip({
  71. track: true,
  72. delay: 0,
  73. showURL: false,
  74. extraClass: "right"
  75. });
  76. $('#right2 a').tooltip({ showURL: false, positionLeft: true });
  77.  
  78. $("#block").click($.tooltip.block);
  79.  
  80. });
  81. </script>
  82.  
  83. </head>
  84. <body>
  85. <h1 id="banner">jQuery Tooltip 插件演示</h1>
  86. <div id="main">
  87. <fieldset id="set1">
  88. <legend>三个带有默认设置的 Tooltip 的元素</legend>
  89. <a title="一个带有默认设置的 tooltip,href 显示在标题下" href="http://google.de">链接到谷歌</a>
  90. <br/>
  91. <label title="一个带有 title 和默认设置的标签,没有 href" for="text1">请输入一些字符!</label>
  92. <br/>
  93. <input title="请注意,当点击 input 元素时,tooltip 消失" type="text" value="测试" name="action" id="text1"/>
  94. <h3>代码</h3>
  95. <code class="mix">$('#set1 *').tooltip();</code>
  96. </fieldset>
  97. <fieldset id="foottip">
  98. <legend>使用 bodyHandler 来显示 tooltip 中的脚注</legend>
  99. 一些指向 <a href="#footnote">脚注</a> 的文本。
  100. <br/>
  101. <br/>
  102. <br/>
  103. <br/>
  104. <br/>
  105. <div id="footnote"><em>这里</em>是一个实际的脚注,通过嵌套的 <strong>HTML</strong> 来完成。</div>
  106. <h3>代码</h3>
  107. <code class="mix">$("#foottip a").tooltip({
  108. bodyHandler: function() {
  109. return $($(this).attr("href")).html();
  110. },
  111. showURL: false
  112. });</code>
  113. </fieldset>
  114. <fieldset>
  115. <legend>一个带有 tooltip 的图像</legend>
  116. <img id="tonus" src="http://jquery.bassistance.de/tooltip/demo/image.png" height="80" title="没有延迟。src 值显示在标题下" />
  117. <h3>代码</h3>
  118. <code class="mix">$('#tonus').tooltip({
  119. delay: 0,
  120. showURL: false,
  121. bodyHandler: function() {
  122. return $("&lt;img/&gt;").attr("src", this.src);
  123. }
  124. });</code>
  125. </fieldset>
  126. <fieldset>
  127. <legend>锁定 tooltip</legend>
  128. <button id="block">点击按钮锁定/解锁所有的 tooltip</button>
  129. <h3>代码</h3>
  130. <code class="mix">$("#block").click($.tooltip.block);</code>
  131. </fieldset>
  132. <fieldset>
  133. <legend>下面四个链接没有延迟跟踪和渐变,带有额外的内容</legend>
  134. <div id="yahoo">
  135. <a title="Yahoo doo - more content" href="http://yahoo.com">链接到雅虎</a>
  136. <a title="Yahoo doo2 - wohooo" href="http://yahoo.com">链接到雅虎 1</a>
  137. <a title="Yahoo doo3" href="http://yahoo.com">链接到雅虎 2</a>
  138. <a title="Yahoo doo4 - buga!" href="http://yahoo.com">链接到雅虎 3</a>
  139. </div>
  140. <select><option>bgiframe test</option></select>
  141. <h3>代码</h3>
  142. <code class="mix">$('#yahoo a').tooltip({
  143. track: true,
  144. delay: 0,
  145. showURL: false,
  146. showBody: " - ",
  147. fade: 250
  148. });</code>
  149. </fieldset>
  150. <fieldset>
  151. <legend>带有额外的 class 的 tooltip。用于在一个页面上显示不同的 tooltip 样式</legend>
  152. <em>请注意,当鼠标停留在右边视区边界时,右边的那个 tooltip 如何显示一个不同的背景图片。</em>
  153. <br/>
  154. <span id="fancy" title="注意 - 请注意,这里带有一些自定义的样式。">一个奇特的 tooltip,带有一些自定义的样式。</span>
  155. <span id="fancy2" title="注意 - 请注意,这里带有一些自定义的样式。">一个奇特的 tooltip,带有一些自定义的样式。</span>
  156. <p><span id="pretty" title="注意 - 请注意,这里带有更多自定义的样式。">一个奇特的 tooltip,带有阴影和一些额外的内容。</span></p>
  157. <br/>
  158. <br/>
  159. <br/>
  160. <select><option>bgiframe test</option></select>
  161. <h3>代码</h3>
  162. <code class="mix">$("#fancy, #fancy2").tooltip({
  163. track: true,
  164. delay: 0,
  165. showURL: false,
  166. opacity: 1,
  167. fixPNG: true,
  168. showBody: " - ",
  169. extraClass: "pretty fancy",
  170. top: -15,
  171. left: 5
  172. });
  173.  
  174. $('#pretty').tooltip({
  175. track: true,
  176. delay: 0,
  177. showURL: false,
  178. showBody: " - ",
  179. extraClass: "pretty",
  180. fixPNG: true,
  181. opacity: 0.95,
  182. left: -120
  183. });</code>
  184. </fieldset>
  185. <fieldset>
  186. <legend>下拉框</legend>
  187. <select title="带有 tooltip 的 select">
  188. <option>1. option</option>
  189. <option>2. option</option>
  190. <option>3. option</option>
  191. </select>
  192. </fieldset>
  193. <fieldset>
  194. <legend>带有 tooltip 的图像地图</legend>
  195. <img id="map" src="karte.png" width="345" height="312" border="0" usemap="#Landkarte">
  196. <map name="Landkarte">
  197.   <area shape="rect" coords="11,10,59,29"
  198.         href="http://www.koblenz.de/" alt="Koblenz" title="Koblenz">
  199.   <area shape="rect" coords="42,36,96,57"
  200.         href="http://www.wiesbaden.de/" alt="Wiesbaden" title="Wiesbaden">
  201.   <area shape="rect" coords="42,59,78,80"
  202.         href="http://www.mainz.de/" alt="Mainz" title="Mainz">
  203.   <area shape="rect" coords="100,26,152,58"
  204.         href="http://www.frankfurt.de/" alt="Frankfurt" title="Frankfurt">
  205.   <area shape="rect" coords="27,113,93,134"
  206.         href="http://www.mannheim.de/" alt="Mannheim" title="Mannheim">
  207.   <area shape="rect" coords="100,138,163,159"
  208.         href="http://www.heidelberg.de/" alt="Heidelberg" title="Heidelberg">
  209.   <area shape="rect" coords="207,77,266,101"
  210.         href="http://www.wuerzburg.de/" alt="W&uuml;rzburg" title="W&uuml;rzburg">
  211.   <area shape="rect" coords="282,62,344,85"
  212.         href="http://www.bamberg.de/" alt="Bamberg" title="Bamberg">
  213.   <area shape="rect" coords="255,132,316,150"
  214.         href="http://www.nuernberg.de/" alt="N&uuml;rnberg" title="N&uuml;rnberg">
  215.   <area shape="rect" coords="78,182,132,200"
  216.         href="http://www.karlsruhe.de/" alt="Karlsruhe" title="Karlsruhe">
  217.   <area shape="rect" coords="142,169,200,193"
  218.         href="http://www.heilbronn.de/" alt="Heilbronn" title="Heilbronn">
  219.   <area shape="rect" coords="140,209,198,230"
  220.         href="http://www.stuttgart.de/" alt="Stuttgart" title="Stuttgart">
  221.   <area shape="rect" coords="187,263,222,281"
  222.         href="http://www.ulm.de/" alt="Ulm" title="Ulm">
  223.   <area shape="rect" coords="249,278,304,297"
  224.         href="http://www.augsburg.de/" alt="Augsburg" title="Augsburg">
  225.   <area shape="poly" coords="48,311,105,248,96,210,75,205,38,234,8,310"
  226.         href="http://www.baden-aktuell.de/" alt="Baden" title="Baden">
  227. </map>
  228. <h3>代码</h3>
  229. <code class="mix">$("map *").tooltip({ positionLeft: true });</code>
  230. </fieldset>
  231. <fieldset>
  232. <legend>在视区的边界测试重新定位</legend>
  233. <p id="right">
  234. 带有固定宽度的 tooltip<br/>
  235. <a title="短标题" href="http://google">链接到谷歌</a><br/>
  236. <a title="长标题,没有其他含义,只是一个长标题,一个很长很长很长很长很长的标题" href="http://google">链接到谷歌</a>
  237. </p>
  238. <p id="right2">
  239. 带有自动宽度的 tooltip<br/>
  240. <a title="短标题" href="http://google">链接到谷歌</a><br/>
  241. <a title="长标题,没有其他含义,只是一个长标题,一个很长很长很长很长很长的标题" href="http://google">链接到谷歌</a>
  242. </p>
  243. <h3>代码</h3>
  244. <code class="mix">$('#right a').tooltip({
  245. track: true,
  246. delay: 0,
  247. showURL: false,
  248. extraClass: "right"
  249. });
  250. $('#right2 a').tooltip({ showURL: false, positionLeft: true });</code>
  251. </fieldset>
  252. </div>
  253.  
  254. </body>
  255. </html>