問題タブ [browser-history]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
407 参照

javascript - ie7 は、アンカー (ハッシュタグ) が異なるページを 2 つの異なるページとして認識しません (したがって、履歴は機能しません)。

いくつかの ajax 履歴動作の開発の一環として、私は奇妙なことに遭遇しました: (私の) ie7 は、異なるアンカー (ハッシュタグ) を持つページを 2 つの異なるページとして認識しません。その結果、戻るボタンを使用すると、ie7 は以前のすべての URL をスキップします (ハッシュタグのみが異なります)。

たとえば、次の項目をこの順序で参照したとします。

  • www.google.com
  • www.mysite.com/index#ajax1
  • www.mysite.com/index#ajax2
  • www.mysite.com/index#ajax3

www.mysite.com/index#ajax3 で戻るボタンを押すと、www.google.com に戻ります

私は本当にこれに頭を悩ませています。私の正気を確認するために、アンカーを使用していくつかのランダムなページをテストし、アップをロードしましたが、実際には同じ問題が発生しました。

私が知る限り、これは予期された動作ではありません (他のすべてのブラウザー (chrome、ff、safari) は問題なく動作することがテストされています。ここで明らかな何かが欠けているのでしょうか、それとも ie7 のインストールが台無しになってしまったのでしょうか?

0 投票する
1 に答える
262 参照

parsing - Adobe AIRまたはその他のツールを使用して、ブラウザーの履歴を読み取る方法はありますか?

まず第一に、私はハッカーではありません:)

特定のサイトグループにアクセスすると、ユーザーにポイントを付与するプロジェクトを実施しています。明らかにプライバシーに関する大きな懸念がありますが、作成したプログラムが履歴を確認し、アルゴリズムを介してサイト/ユーザーをランク付けできる限り、実際にそれらがどこにあるかを知ることには関心がありません。

これはダウンロード可能なアプリケーションであり、透明性が不可欠であるため、ユーザーにどのように機能するかを伝えます。

さて、それを念頭に置いて、ローカルプログラムがブラウザのキャッシュ/履歴にアクセスし、それからリストを作成する方法はありますか?

FirefoxがSQLiteを使用して履歴をコンパイルしていることを読みました。履歴は、AdobeAIRを使用して解析できる可能性があります。同時に、Adobe AIRはファイルシステムにアクセスできるため、通常のIE一時フォルダーにファイルが保存されているかどうかを確認できる可能性があります。もしそうなら、それらがダウンロードされたURLを読んでみてください?

私はこれらすべてが非常に危険に聞こえることを知っていますが、心を開いておくようにしてください:)

よろしくお願いします。

0 投票する
3 に答える
12805 参照

google-chrome - Chrome は、ブラウザの履歴で使用する非表示のフォーム フィールド値をキャッシュしません

テキスト ボックス フィールドと非表示フィールドの両方を含む ASP.Net Web フォームがあります。隠しフィールドの値は、クライアント側の JavaScript を使用して動的に変更されます。フォームの投稿、値の検査、別のページへのリダイレクトはすべて期待どおりに機能しています。

ただし、ブラウザーの [戻る] ボタンを使用して前のページを表示すると、すべてのフォーム フィールドに投稿された値がまだ入力されていることがわかります。

IE と Firefox では、これはテキストと非表示の入力フィールドの両方に当てはまります。

Chrome では、これはテキスト フィールドの場合のみです。非表示フィールドの値は失われます。

ブラウザの履歴をナビゲートするときに、Chrome が動的に設定された非表示のフォーム フィールド値を再入力しないというのは本当ですか?

問題を示すために小さなサンプルをまとめました。必要に応じて提供できます。最初に質問をして、これがよく知られている動作であり、受け入れなければならないものかどうかを確認したかった.

0 投票する
4 に答える
27998 参照

javascript - ページを離れずにブラウザに表示されるURLを変更する方法

JavaScriptを使用してブラウザのURLを変更することはできますが、ページを離れることはできませんか?

0 投票する
7 に答える
69628 参照

jsp - ログアウト後にユーザーが以前にアクセスした保護されたページを表示できないようにする

ログアウト/サインアウト後に、エンド ユーザーが制限されたページに戻れないようにする必要があります。しかし現在、エンド ユーザーは、ブラウザーの [戻る] ボタン、ブラウザーの履歴にアクセスすること、またはブラウザーのアドレス バーに URL を再入力することによって、それを行うことができます。

基本的に、サインアウトした後、エンドユーザーが制限されたページにアクセスできないようにする必要があります。どうすればこれを最高に達成できますか?JavaScript で戻るボタンを無効にすることはできますか?

0 投票する
3 に答える
1024 参照

javascript - ブラウザの履歴を管理する賢い方法

AJAX アプリケーションでまともなナビゲーションを実装しようとしています。私が今していることは次のとおりです。

  • ユーザーが AJAX リンクをクリックするたびに、対応する呼び出しが実行され、ハッシュが変更されます。
  • 新しいページが読み込まれるたびに、ハッシュが存在するかどうかを確認し、対応する AJAX 呼び出しを行ってページを更新します。これにより、ブックマークが期待どおりに機能することが保証されます。
  • 500 ミリ秒ごとに、ハッシュが変更されているかどうかを確認し、対応する AJAX 呼び出しを実行します。これにより、わずかな遅延はありますが、ユーザーが戻る/進むボタンを押しても処理されます。

3 番目の点は少し厄介です。ハッシュをチェックするためだけに 500 ミリ秒ごとにタイムアウトを設定したくありません。

これを管理するより良い方法はありますか?代替案は思いつきませんが、何かが足りないのかもしれません。

別のメカニズムに基づいていることがわかっている場合を除き、既製のソリューションに私を向けないでください.

0 投票する
3 に答える
29316 参照

jquery - window.history.pushStateとフォールバックを使用したクロスブラウザーjqueryajax履歴

クロスブラウザ方式でjQueryとAJAXを使用してナビゲーション履歴を実装したいと思います。私のアプローチは、をサポートしていないブラウザでwindow.history.pushStateハッシュURLを使用してフォールバックすることです。/#!/urlwindow.history.pushState

例えば:

をサポートするブラウザでwindow.history.pushStateは、これらのリンクのいずれかをクリックすると、ページを更新せずにアドレスをhttp://domain.com/home、http://domain.com/aboutな​​どに変更する必要がありますブラウザがサポートしない場合はwindow.history.pushState、を使用する必要があります。フラグメント識別子、つまり:http ://domain.com/#!/home 、http ://domain.com/#!/about 。


更新:ここでのフィードバックに基づいて、古いブラウザーのフォールバックでHTML5 HistoryAPIのjQueryアドレスを使用するAjaxSEOgit)を 実装しました。/#!/url

0 投票する
2 に答える
1023 参照

javascript - Ajax履歴のポーリングと非表示のiFrame

バックグラウンド

URL のハッシュ変更の検出と、進む/戻るボタンの修正は、Ajax の履歴を扱うライブラリの 2 つの要件です。これらのライブラリを実装するための 2 つの考え方があります。ポーラーに常に URL をチェックさせることができます (悪いブラウザには onHashChange イベントがありません)。または、非表示の iFrame を使用して、ブラウザーの履歴にポイントを追加することもできます。非表示の iFrame はポーリングよりも優れていると考える人もいるかもしれませんが、非表示の iFrame は外部ブラウザーの URL を更新しません。したがって、ユーザーが Web アプリケーションで現在の状態を共有したい場合は、常に初期状態を共有することになります。

質問

ポーリングを必要とせず、メイン ブラウザの URL を更新する Ajax 履歴の手法はありますか?

0 投票する
2 に答える
870 参照

url - IUrlHistoryStg2::ClearHistory() はサービスから機能しませんか?

IUrlHistoryStg2::ClearHistory() メソッドは、ユーザーごとに文書化されています。

http://msdn.microsoft.com/en-us/library/aa767715(VS.85).aspx

SYSTEM アカウントで実行されているサービスから呼び出すと、特定のログオン ユーザーをターゲットにすることができません。WindowsIdentity.Impersonate() を介してユーザーの偽装に成功しましたが、ClearHistory() への呼び出しは成功に対して常に 0 を返しますが、ユーザーの履歴はクリアされません。

これは XP と Win7 の両方に当てはまるため、セッション分離の問題ではないようです。

おそらくそれは COM であるため、偽装するときに呼び出し元のスレッド トークンではなく、呼び出し元のプロセス トークンを見ていますか?

ユーザーのなりすましが単にこの方法の成功につながらないのはなぜですか?

0 投票する
3 に答える
24498 参照

javascript - jQuery履歴プラグイン

そこにはいくつかの異なるjQuery履歴プラグインがあり、他のプラグインよりも優れています...

私はどちらを使うか、考えや他のことを試すかを決めようとしています: