2011-06-18 15 views
0

私はajaxローダーを使用しています。読み込み中に表示される画像はIE7では表示されていませんが、Internet Explorer 8とFFでは正常に動作しています。 私はローダーのために、以下のjQueryを使用している: - ここにAjax Loader IE 7-非表示

initLoader(); 

function initLoader() 
{ 
    //Get the A tag 
    var id = $('#dialogLoader'); 

    //Get the screen height and width 
    var maskHeight = $(document).height(); 
    var maskWidth = $(window).width(); 

    //Set height and width to mask to fill up the whole screen 
    $('#mask').css({ 'width': maskWidth, 'height': maskHeight }); 

    //Get the window height and width 
    var winH = $(window).height(); 
    var winW = $(window).width(); 

    //Set the popup window to center 
    $(id).css('top', winH/2 - $(id).height()/2); 
    $(id).css('left', winW/2 - $(id).width()/2); 
} 

function showLoader() 
{ 
    //transition effect  
    $('#mask').show(); 
    $('#dialogLoader').show(); 
} 

function hideLoader() { 
    $('#mask').hide(); 
    $('#dialogLoader').hide(); 
    $('.window').hide(); 
} 

//To Start and hide loader 
$("#mask").bind("ajaxStart", function() { 
    //alert('start'); 
    showLoader(); 
}).bind("ajaxStop", function() { 
    //alert('end'); 
    hideLoader(); 
}); 

はCSSです: -

/* Loader CSS start */ 
#mask 
{ 
    position: absolute; 
    left: 0; 
    top: 0; 
    z-index: 9000; 
    opacity: 0.4; 
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=40)"; /* first!*/ 
    filter: alpha(opacity=40); /* second!*/ 
    background-color: gray; 
    display: none; 
} 

#boxes .window 
{ 
    position: absolute; 
    left: 0; 
    top: 0; 
    width: 440px; 
    height: 200px; 
    display: none; 
    z-index: 9999; 
    padding: 20px; 
} 

#boxes #dialogLoader 
{ 
    width: 70px; 
    height: 60px; 
    padding: 20px; 
    text-align: center; 
    background-color: #ffffff; 
    border-radius: 20px; 
    -moz-border-radius: 20px; 
    font-size: 0.9em; 
    font-family: Arial; 
} 
/* Loader CSS End */ 

マスクは、ウィンドウが灰色になります表示されているが、搭載画像がplzは私を聞かせて示されていませんこれがIE 7でどのように機能するのかを知ってください。 ありがとう!!!

+0

問題はCSSにあると思われます。 #dialogLoaderのCSSプロパティを投稿できますか? – Emil

+0

私は 'id'を別の名前に変更することから始めるでしょう。何か他のものでも' _id'でも何回か過ごしました.IEは 'window'プロパティなどの参照を返していました。 –

答えて

0

あなたが投稿したコードを編集しました。あなたのコードは、もともとこのライン投稿されましたとおり

:私は上記のように表示さ

//To Start and hide loader $("#mask").bind("ajaxStart", function() { 

でした。

これは、このステートメントの開始点をコメントアウトしてからコンパイルされないコードです。

ここにコピーしたときのこれはちょうどタイプミスか、これは問題ですか?

<CR><LF>に問題がある可能性があります。

私は彼らが正しいことを確認し、試してみるでしょう。

+0

ご質問にCssが追加されましたのでご覧ください。 – user655336

+0

申し訳ありませんが、コピー中にコメントされることがありますが、コードにはコメントはありません。 – user655336

+0

とは何ですか? – user655336

0

私の推測:それはあなたがここで参照、クラス名.windowを持っていることを好きではない:

$('.window').hide(); 

か、そしておそらく、それが参照するので、理由idという名前の変数を、IE をすることを嫌っています他の何か...私はこれについてのより多くの情報を見つけようとしているが、それは私に同じようなトラブルを与えた。

EDIT:私は上記のコメントを完全にオフトラックすることができ、それはIEが、それはとうまくプレーしなかったことだけで、ブラウザだったので、AJAXリクエストをデバッグ二日過ごした後、私は少し偏執的になっているだけということですそれはIEを怒らせる時です。

投稿したばかりのCSSについては、jQueryを使用して不透明度を設定することをお勧めします。これは主にブラウザ間で互換性があり、CSSはそうではありません。

+0

私は理解できません。 – user655336

+0

これは問題ではないかもしれませんが、前回私が 'IE'で問題を抱えていたのは、' id'という名前の変数があったからです。 'IE'はそれを何か他のものとして参照していましたが、私のサーバにたどりつくまでには本当に変わった長い文字列でした。名前を変えるとすぐに、これは修正されました。 –

+0

クラスウィンドウをloadwinと変数idに変更してダイヤルしましたが、まだ違いは見えません。 – user655336

関連する問題