safariブラウザの「戻る」ボタンで画面遷移したときキャッシュを読みに行く事で起こる問題を解決します。方法は「戻る」ボタンで画面遷移したらjavascriptで強制的にリロードするというものです。スピード的には当然キャッシュを読みに行った方が早いので、このリロードするという方法を使うと若干遅くはなります。safariのそれはブラウザに保存されたキャッシュを読みにいく。他のiOS関係の記事はこちらキャッシュを読みに行く事で起こる問題点iPhoneまたはiPad用webページの開発をしていると思わぬところでつまづく。safariの戻るボタンの問題。あるページ(A)のボタンをタップするとプルダウンメニューが出現して、そのメニューをクリックでリンク先ページ(B)へ遷移。リンク先ページ(B)からページ(A)に戻りたいのでブラウザsafariの「戻る」ボタンを押すが、戻ってみると前回操作したプルダウンメニューが開きっぱなしになっている。戻ったときはページ(A)の通常の状態(プルダウンメニューは閉じている)になっていないとヨロシクないのだ。いちいちリロードすれば通常の状態には戻るのだが、それでは困る。safariのそれはブラウザに保存されたキャッシュを読みにいく。safariはキャッシュを読みにいくのか?androidブラウザの「戻る」ボタンを押すと再読み込みをする、つまりサーバーにhttpリクエストを実行するので、その分時間がかかってしまう。safariの場合、ブラウザに保存されたキャッシュを読みにいく。いちいちサーバーにリクエストをしない、つまり再読み込みをしないので、高速なんだね。その事により「戻る」「進む」ボタンを押して移動するときのスピードがアップするので、ユーザーにとっては快適である。safariはそのためブラウザに保存されたキャッシュを読みにいくわけ。今回の解決策ページを離脱するときの状態(プルダウンメニューが開いている)がキャッシュされていて、「戻る」ボタンを押すとその状態が再現されてしまう。javascriptでプルダウンメニュー要素が開くようにクラスを生成しているので、その状態がキャッシュされているために起こった現象だ。リロードしたら初期状態に戻る(クラスは消滅)わけだがら、「戻る」ボタンを押したらリロードするように出来たらいいわけだ。遷移のスピードが遅くなってしまうがとりあえず今回はこれで対策してみる。iosの戻るボタンでもリロードさせる事が出来る。onpageshow:ロードの有無に関わらずページが表示された状態。キャッシュを読みに行ったかどうかはevent.persistedで判断する。なった場合には、キャッシュされたページを読みこむのでwindow.location.reload()で強制的にリロードする。他にも色々やり方はあるがとりあえず今回はこれで対応した。ユーザールートに「.weinre」ディレクトリを作る。その中に「server.properties」というファイルを作る。B」に任せる(委譲)。B」のメ...ios開発メモdispatch_asyncを使ってメインスレッドでUIを更新たとえば、あるurlからjsonデータを取得してきて結果をUITextView(self.db_list.text)に表示させようとした。