2009-08-09 12 views
1

これはFirefoxとChromeではうまく動作しますが、Internet Explorerではうまく動作しない最初のjQueryスクリプトです。

scripts[] = jquery.jfeed.pack.js 
scripts[] = script.js 

最初のスクリプトは、RSSが私のためにフィードを解析するjQueryプラグインです:

は私が私のテーマの.infoファイルを使用して2つのスクリプトをロードします。 2番目のスクリプトは次のようになります

var init = jQuery.getFeed({ 
    url: 'panorama.xml', 
    success: 
    function(feed) 
    { 
     var image = feed.items[0].description; 
     $('#page').css('background-attachment', 'fixed'); 
     $('#page').css('background-image','url('+image+')'); 
     $('#page').css('background-position', 'center 63px'); 
     $('#page').css('background-repeat', 'no-repeat'); 
    } 
}); 

$(document).ready(init); 

効果アイテムの説明でランダム画像へのパスを含むRSSフィードは、DIVの#pageの背景を設定するために使用されることです。 rssフィードは、cckおよびviewsモジュールによって生成されます。これには追加のテンプレートカスタマイズが必要でしたが、それは機能します。

IEを除いてすべてが素晴らしいようです。私はMicrosoft Script Debuggerを使用しようとしましたが、あまり役に立ちません(または使用方法がわかりません)。 MSIE 8.0; Mozillaの/ 4.0(互換性:

Webページエラーの詳細

ユーザーエージェントを:Analyticsのコードを(これが唯一のより最近現れ始めた)Googleに関連している可能性がありように見える1個のランタイムエラーがあります; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; Tablet PC 2.0) タイムスタンプ:8月9日2009 19:58:39 UTC

メッセージ: 'a'はnullまたはオブジェクトではありません ライン:1文字:1コード:0 URI: http://webdev/sites/default/files/js/js_77589ce906350e35d2f4994348346ad7.js

しかし、それを越えて、私はデバッガで見たとき、私は私が実行することを目的とjQueryのコードをコメントアウトされていることを参照してください。

;eval(function(p,a,c,k,e,d){e=function(c){return(c<a?'':e(parseInt(c/a)))+ 
<-- snip --> 
; var init = jQuery.getFeed({ 
     url: 'panorama.xml', 
     success: 
     function(feed) 
     { 
     var image = feed.items[0].description; 
     $('#page').css('background-attachment', 'fixed'); 
     $('#page').css('background-image','url('+image+')'); 
     $('#page').css('background-position', 'center 63px'); 
     $('#page').css('background-repeat', 'no-repeat'); 
     } 
    }); 

$(document).ready(init); 

IE8とIE6でこれが壊れていることを確認しました。ここで何が間違っているのか理解してくれる人がいますか?私はまだjavascriptを有効にしていないブラウザで何が起こるか心配していますが、これがIEで実行されなくてもそれが問題になると思います。

ランダムな背景画像の効果を得るために、私は非常にハッキングされたソリューションを思いついたようです。私はもともと画像をインラインで表示しましたが、スクロールバーを作成せずにページよりも広い必要があります。このjavascriptの狂気の代替手段はありますか?

+0

下のコメントを参照してください私の答えは - 問題を発見 – redsquare

+0

別のコメント....! – redsquare

+0

以下を参照してください。Arosboro – redsquare

答えて

0

使用しているjQueryのバージョンは何ですか?おそらく、使用している外部スクリプトとのバージョンの非互換性があるかもしれません(私にはそれはかなり古いと言われているパックされたバージョンです)、jQuery 1.3.2を実行している場合です。

バージョンを説明し、あなたが使用しているプラ​​グインにURLを渡すことができますか?

ページをオンラインにしてフルバージョンのスクリプトを使用することができれば、デバッグして問題を見つけるのがはるかに簡単です。パックされたスクリプトはデバッグできません。

+0

私は自分の開発ボックスへのポート転送をセットアップしました。これは一時的に起動します。 http://69.141.58.30/ 私はdrupalを使用しています。6.13 jQuery 1.2.6が付属しています。 ここはjFeedのURLです:http://www.hovinne.com /blog/index.php これが役立つことを願っています! – Arosboro

+0

またはむしろ、http://plugins.jquery.com/project/jfeed – Arosboro

+0

あなたはinitを呼び出すためのdoc準備文を追加します。それが解析されると、すなわちinitは未定義です。表示されているエラーは、jQueryがdocレディ・イベントを呼び出そうとしているのに、.call(定義されていない) – redsquare

関連する問題