2008-09-03 6 views
0

LightWindowとIE7の問題を回避し、ページロード時に444行目のJavaScriptエラーがlightwindow.jsそのobject does not support this property or method。さまざまなフォーラムでさまざまな投稿を見つけたにもかかわらず、Googleの検索結果には解決策がありませんでしたので、後で誰かを助けることを期待してここに投稿しています。LightWindow&IE7、 "Line 444 - オブジェクトはこのプロパティまたはメソッドをサポートしていません"

多くの人がスクリプトファイルの特定の順序を提案しましたが、私はすでにこの順序(プロトタイプ、scriptaculous、lightwindow)を使用していました。

  1. 移動を:

    これらは私が私が知っているでも、特に「固定」の問題をどれをテストする時間を持っていないとしてそれは最終的に私は唯一の記録としてここに書き、動作するように見えました手順は、 lightwindow.jsの呼び出しをページの最後に追加します。 if (this._getGalleryInfo(link.rel)) {

  2. 変更行1157:
  3. 変更ライン444に最後にif (this._getGalleryInfo(this.element.rel)) {
  4. 例外を嚥下、try/catchブロックとライン1417 1474へ、私は囲まれた(これは、私の謝罪汚れています)。

EDIT:

私はこれは、Firefoxを破ったことに気づきました。これはとても良い修正ではありませんが、 "rel"タグのないlightwindowリンク、 "rel"タグを持ついくつかのlightwindowリンク、と1つの "インライン"リンク)今IE7で正常に動作します。この問題について追加したいことがある場合や、指定されたソリューションの改善/改善についてご意見をお寄せください。代わりのtry..catchの

答えて

0

私はライン444に変更することで、これを修正:IE6 +でそれをソートして作業を続けているように思われ...

if(gallery.length > 0) 
{ 
    // Rest of code here... 

:その後に、後続の比較ステートメントを変更

var gallery = this._getGalleryInfo(link.rel) 

をFirefoxなど

私は1157行を一切変更しませんでしたが、私が実際に行っていることを見るためにコードを読んでいないので、その関連性についてコメントできませんか?

私は?例のrel属性(Evoution?[man])でIEで問題が発生している可能性がありますが、いくつかのテストに時間を費やすことなく、わかりません。

HTH。

1

は、多分あなたはあなたにもそれを使用する前に、同じようthis.element.relif(this && this.element && this.element.rel) ...)でチェックすることができ

if(this && this._getGalleryInfo) 
{ 
    //use the function 

} 

を使用して試みることができます。

_getGalleryInfoまたはthis.element.relがまだ初期化されていないため、まだ存在しないようです。私はそれを使用している場合はそれが存在するかどうかを確認してください。

私は完全に間違っている可能性があります。知る唯一の方法は、テストすることです。

0

Lightwindow 2.0、IE6、IE7、IE8(beta)で同じ問題がありました。 IE6、IE7、IE8(ベータ版)では次のように解決しました。私はライン443と1157に置く
  if(gallery = this._getGalleryInfo(link.rel))

代わりの
  gallery = this._getGalleryInfo(link.rel)
  if(gallery)

は、これが役立つことを願っています!

関連する問題