2017-06-15 9 views
0

を更新する前に完了するための非同期のAJAXを待っている私は、ログファイルからテキストを取得し、新しいブラウザウィンドウにプレーンテキストとして、それを表示するには、次の関数を書きました大きなログファイルに役立ちます。Firefoxは一見DOM

Chrome/IEでは、非同期のajaxリクエストがバックグラウンドで動作している間に、「待機」カーソルがすぐに表示されます。 Firefoxでは、ajax関数が最初に完了するのを待っているように見えるので、 'default'カーソルのみが表示されます(そして、いったん設定されると 'default'に戻ります)。

Firefoxでこれを回避する方法はありますか?任意の提案をいただければ幸いです。

+0

いいえ、firefoxはあなたの主張どおりに動作しません。おそらく、カーソルが本体カーソルスタイルをオーバーライドしている要素の上にカーソルを置いています。 –

+0

oh、私参照 - 体が**新しいウィンドウで空のため**、当然のことながらカーソルは、あなたが期待するものではありません(それは正直に言うと他のブラウザである驚い - あなたは空の要素の上にマウスを持っていることができますか? ? ) –

答えて

2

私はそれがどのブラウザで動作驚いている - 新しく開いたウィンドウはゼロコンテンツしたがって、ゼロサイズのボディを持っているでしょう - どのようにあなたの現在のカーソルを取得するには何も以上の「ホバー」は、特定のものに変更することができますか?私はFirefoxが正しく動作している唯一のブラウザだと思う!言われていること

- ダミーコード

function openLog(logFile) { 
    var win = window.open('', '_blank'); 
    var doc = win.document; 
    var title = doc.createElement('TITLE'); 
    var titleText = doc.createTextNode(logFile); 
    title.appendChild(titleText); 
    doc.head.appendChild(title); 
    // change from here 
    var html = doc.documentElement; 
    html.style.cursor = 'wait'; 
    html.style.minHeight = '100vh'; 
    // changes finished 
    // 
    // dummy setTimeout for testing 
    setTimeout(function() { 
     // remove the cursor from HTML element 
     html.style.cursor = 'default'; 
    }, 4000); 
}; 
openLog('banana'); 

私は、実行可能スニペットとしてそれを投稿したいが、誰がSOこのためだけにポップアップを開くことができるようにしたい:P

私はbody.parentElementを使用する(すなわちHTML要素) - bodyでこれを行うと、垂直スクロールバーで終わるので、

+0

良い点。更新されます –

+0

興味深いことに、新しいコードでは、私は(時々)クロムに奇妙な何かを見ています。マウスを動かさないと、カーソルが「待機」に変化しないことがあります。 「動き」は、必要に応じていることを引き起こすのに十分に簡単であるが、私はそれが奇妙だと思ったはずです。 –

+0

実際、OPのクロームのバージョンには何か変わったことがあります。私はosXのクロームから再現できません。 – Kaiido

関連する問題