プロトタイプ、Ajax.PeriodicalUpdater、およびInternet Explorer

Ajax.PeriodicalUpdaterを使用するための非常に簡単なコードは、公式プロトタイプWebサイトのAPIの説明で提供されています



  new Ajax.PeriodicalUpdater( 'items'、 '/ items'、{
  方法:「取得」、頻度:3、減衰:2
 }); 




すべてがうまくいくように見えますが、今日、IEで作業中にすくいに出くわしました。つまり、スクリプトは意図した目的を達成しませんでした。タイマーによってコンテナを更新しませんでした。



解決策を長い間探し続けましたが、Runetでわかりやすいものは見つかりませんでした(必要なだけ長く長く検索しなかったのかもしれません)。 しかし、外国のサイトを調べてみると、この記事に出くわしました: blog.innerewut.de/2007/9/22/ie-doesn-t-let-us-rest



そして、次の方法で問題を解決しました。



  new Ajax.PeriodicalUpdater( 'items'、 '/ items'、{
  方法:「投稿」、頻度:3、減衰:2
 }); 




IEは単純にGETリクエストをajaxにキャッシュします(PeriodicalUpdaterを含む)。 GETリクエストごとにさまざまなパラメーターを送信するか、POSTを使用して勝つことができます。 このソリューションは、すべての問題を取り除き、すべてのブラウザーで必要なコンテナーを更新できるようにします。 やった! (:



PS Rubyでプログラミングする場合、POSTに切り替えるのはそれほど簡単ではないため、 blog.innerewut.de / 2007/9/22 / ie - doesn - t - let - us - restの記事に示すように、 POSTに手を加える必要があります。



x投稿: n0ns3ns3.livejournal.com/236264.html



All Articles