ホーム > タグ > Tooltip

Tooltip

[mootools] Tips Bug fix - “element.getParent is not a function”

MooTools More1.2.4.2のツールチップ表示クラスTipsにあるバグの修正方法について。

主な症状

ツールチップ表示を有効にした要素にマウスオーバーしてからマウスアウトすると、
FireBugで element.getParent is not a function というエラーが出る。というもの。
(圧縮してあるとelementがbになる)
エラー行数は1142行目(未圧縮)
エラーは最初の1度しか出ない。

修正方法

原因となっているTipsのfireForParentメソッドを入れ替える。

ver 1.2.4.2 Original Code:

JavaScript:
  1. fireForParent: function(event, element){
  2.     if (!element) return;
  3.     var parentNode = element.getParent();
  4.     if (parentNode == document.body) return;
  5.     if (parentNode.retrieve('tip:enter')) parentNode.fireEvent('mouseenter', event);
  6.     else this.fireForParent(parentNode, event);
  7. }

Fix Code:

JavaScript:
  1. fireForParent: function(event, element){
  2.     if (!element) return;
  3.     var params = Array.link(arguments, {event: Event.type, element: Element.type});
  4.     var parentNode = params.element.getParent();
  5.     if (parentNode == document.body) return;
  6.     if (parentNode.retrieve('tip:enter')) parentNode.fireEvent('mouseenter', params.event);
  7.     else return this.fireForParent(parentNode, params.event);
  8. }

参照元:Tips: "element.getParent()" not working, because "element" is of type Event
このバグは1.2.4.3で修正される予定。

[jQuery]イメージマップでTooltip表示するサンプル

「イメージマップのホットスポットにマウスオーバーしたら説明表示出るように出来ない?」って言われて書いたやつ。
非表示にしてるブロック要素を表示してるだけなので、画像とかテキストとか割とフリーダムに出せる。

jQuery1.2.6用。

jQueryのマウスイベントには以下プロパティ提供されていて

  • pageX/Y : ページの左上を0としたマウスポインタの位置
  • clientX/Y : ブラウザのドキュメント表示領域を0としたマウスポインタの位置

特別なことしなくてもイベントが発生した時のマウスポインタの位置を取得することが出来る。

Continue reading

Home > Tags > Tooltip

最近の投稿
最近の修正
  • そしてこのSQLはわれながらよく書いたと思う 2010-11-15
  • CSVの列っていう方がいいのかな…118項目だった 2010-11-15
  • 楽天のCSVの項目が116個もあった衝撃 2010-11-15
  • オフィスで香水臭振りまくのは迷惑だと知れ 2010-11-15
  • ぐあー フレグランステロやー 2010-11-15
  • More updates...

Powered by Twitter Tools

Tag Cloud
おすすめサーバー・他
メタ情報

Return to page top