2010-12-28 4 views
1

私はIE6のどこでも動作するツールチッププラグインを使用しています(休暇中の人が自宅で開発しました)。当然、IE6だけを使用する人々のサイトで使用されているため、表示する方法を見つける必要があります。IE6はJavascriptのツールチップを表示しません...どうやってこれをデバッグし始めますか?

このようなことをどのようにデバッグし始めますか?私は他のjavascriptのツールチッププラグインがこれに対処するために何をしたのかを知るためにgoogledをしましたが、私の問題に関係するものを見つけることはできません。だから私は自分でそれをデバッグするのが大好きですが、私は本当にどこから始めるべきか分かりません!

どうやってこのナッツをひっくり返しますか?

いくつかのコード:我々は(ディスプレイと:CSSで設定なし)下記のHTMLの挿入で

...

var noteContainer = 
'<div style="float:left;" class="ttip-container"> 
    <div class="ttip-box"> 
     (<a class="ttip_heading" href="javascript:void(0)">notes</a>) 
     <div class="ttip" style="background-color:#ffffff;"> 
      <h3>Notes</h3> 
      <div class="subhead">' + noteMessage + '</div> 
      <div class="subhead_bottom">Click <a href="javascript:void(0)" class="note" noteData="' + note + '" mId="' + mId + '" visibleToM="d"><em>(notes)</em></a> to ' + actionCap + '</div> 
      <img class="point" src="img/hovertip.gif" width="18" height="14" /> 
     </div> 
    </div> 
</div>'; 

は、次にプラグインはdiplayにこれを設定します。オーバーホバー上のブロックアンカーリンク。

だからどこでIE6のjavascriptの問題をデバッグしますか?私はIE6をVMで動作させているので、私はそれを扱うことができます...何が起こっているかもしれないかについて何も教えてくれません。

+1

IEでエラーが発生しましたか? – Albinoswordfish

+0

いいえ、何もありません。ツールチップはありません。 – Lothar

答えて

1

実際にHTMLがDOMに正しく挿入されていますか?解析エラーがある場合、IEのDOMメソッドがチョークします(IE6に無効なHTMLを挿入できません)。これはステップ1です。マークアップが実際に存在することを確認します(ソースの表示は問題ありません)。

あなたのイベントが発砲しているかどうかを確認してください:(おそらく)クリックハンドラーの内部にアラートを入れてください。あなたのCSS変更機能が実際に起動しているかどうかを確認してください。

あなたのcss変更機能がオブジェクトにハンドルを持っているかどうか確認してください。 alert(this.tagName)(またはe.tagNameのようなものを試してみてください。そうでない場合は、表示/非表示の要素があります)。

これらの仕組みをお知らせください。

+0

これらの手順をお寄せいただきありがとうございます...私はそれを解決するのに役立ちました。私はすでにここに投稿しています。発砲しているイベントを見つけようとすると、ツールチップがプラグインを使用していない(ロードしていたが、使用していない)ことがわかった。むしろ、CSS疑似クラス:ホバーに依存するようにコーディングされていた。いったん私は自分のJSを追加してツールチップの表示を処理するのが簡単だと分かった。しかし、それは私の考えを得て、私が問題を解決するのを手伝ったので、ステップをありがとう! – Lothar

2

IEの開発者ツールバーをインストールして、およびVisual Web Developerのこの場​​合

+0

インストーラは、この製品は私のオペレーティングシステム(XP)と互換性がないと言います。だから...私はWindows7マシンをインストールできますが、Web Developer ExpressでIE6を実行するにはどうすればいいですか? IE6を入手するために私が認識している唯一の方法は、VPCイメージの一部としてそれをつかむことですが、それはまたXPを実行します。 – Lothar

+0

VWDはXPで動作するはずです。少なくとも、VWD 2008は確かに可能です。 XP SP3をインストールする必要があります。 – SLaks

+0

ええと...私はSP3を持っていないように見えますが問題です。私はそれを取得し、再度試してみよう。 – Lothar

1

(実際のデバッガを持っている)Expressをインストールし、私は、HTMLが適切に追加されたかどうかを確認するためにIE Developerツールバーを使用します資料。そうであれば、問題があなたの質問に貼り付ける声明ではないことがわかります。それが(その場合、あなたはおそらく、スクリプトエラーを受信して​​いる)あなたの文書ではない場合、私はそれが正しく追加されます場合

var noteContainer = '<div style="float:left;" class="ttip-container"></div>'; 

テストにあなたのツールチップのHTML文字列をguttingしようとするだろう。その場合は、エラーが発生するまで、ツールチップのコンテンツを徐々に追加してください。その時点で、IE6の解析エラーを引き起こしていることをよりよく理解できます。

一般的に、alert()を使用してIE6-7で 'Old school'のデバッグを行うことは、多くの状況で依然として有効です。

のVisual StudioのVisual Web Developerのエクスプレス偉大なオプションですが、彼らは、システムリソースの側に少し重いだし、仮想マシン内で動作するようにいらいらすることができます。

1

他のすべてのブラウザで動作するJSを使用するIEを取得することは大きな苦痛であり、私の同情です。

私がこのような場合に行うことは、実際に生成してページにツールチップを表示しているソースを開くことです。そこにアラートを投げたり、コード内の別の場所でdocument.titleを変更したりしてください。ツールチップが表示されるはずの部分にも表示されているかどうかを確認してください。

の場合は、コードの「レンダリング」段階になります。デバッグセットアップを変更して、ツールチップ要素の内容、要素のサイズなどを教えてください。あなたは集めることができます。幅/高さが0の要素や完全に欠けている要素のように、そこに何かが突き出ている可能性があります。

基本的には、「データをプルする」か「レンダリングする」のいずれかの問題に絞っています。

関連する問題