0

非常に奇妙なバグが発生しています。正常に機能するフライアウトを備えたガジェットから文字のフライアウトコード文字を再現したにもかかわらず、フライアウトをガジェットに表示できません。

コードは次のとおりです。

function doFly(i){

var div = 'div_' + i;
flyHTML = $(div).html();

if (System.Gadget.Flyout.show == false){

System.Gadget.Flyout.file = "flyout.html";
System.Gadget.Flyout.show = true;
msgJS(System.Gadget.Flyout.show);
}

else{
System.Gadget.Flyout.show = false;
}


}

msgJS関数は、デバッグ目的でActiveXポップアップを提供します。前の行で.showをtrueに設定しましたが、ポップアップを呼び出すと値はfalseのままです。フライアウトを表示できません、期間。最初はクリックイベントが失われていると思っていましたが、メインのガジェットDOMにとどまると、クリックが登録され、残りのコードが正しく実行されます。

その.showで何が起こっているのでしょうか?既知のバグを確認しましたが、どれもこれに当てはまらないようです。それは腹立たしいです。

4

1 に答える 1

0

更新:これが私が現在使用しているコードです:

関数 doFly(i){

var div = 'div_' + i;
flyHTML = $(div).html();

if (System.Gadget.Flyout.show == false){

    try {
        System.Gadget.Flyout.file = "flyout.html";
        System.Gadget.Flyout.show = true;
        $('a#teamr').text(System.Gadget.Flyout.show);
    }
    catch(e){
        $('a#teamr').text(e);
    }
}

else{
    System.Gadget.Flyout.show = false;
}

これは、コードが例外をスローしておらず、.show の値が false であることを示しています。サイドバーに関連するバグがあり、ガジェットがフォーカスを失い、フライアウトが閉じます。私はそれを回避しなければならないと想像することしかできません。私が持っている質問は次のとおりです。焦点が失われる原因は何ですか? 奇妙です。

于 2009-05-05T19:44:18.890 に答える