問題タブ [hashchange]

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 投票する
3 に答える
4926 参照

javascript - Javascriptアンカーナビゲーション

フェイスブックやグーグルメールのような「アンカーナビゲーション」でウェブサイトを作っています。私はそれを機能させましたが、完全ではありません。そのようなものでページをロードすると#contact、リンクをクリックしない限りロードされません。また、私がしていることを行うためのより良い、より効率的な方法はありますか?私はJSプログラミングの最高の人ではありません。

JavaScript

HTML:

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

javascript - Javascript で URL フラグメント識別子 (アンカー) 変更イベントを処理する

URL フラグメント識別子 (アンカー) が変更されたときに実行される Javascript コールバック コードを作成するにはどうすればよいですか?

たとえば からhttp://example.com#aまでhttp://example.com#b

0 投票する
6 に答える
21004 参照

javascript - JQueryでURLハッシュ/履歴を実行するのに最適なライブラリは何ですか?

URL ハッシュの JQuery ライブラリを調べてみましたが、適切なものは見つかりませんでした。「履歴プラグイン」がありますが、バグが多く、柔軟性がないことは誰もが知っています。

div 内にページを読み込んでいます。URLハッシュと一緒に前後に移動する方法が必要です。

これらすべてを処理できる最高のライブラリは何ですか?

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

ajax - 戻るボタンをアンカー (#) と iframe で動作させる方法

アプリケーションの状態を定義するためにURLのアンカーを使用して、その主要部分がajaxスタイルのナビゲーションシステムによって駆動されるサイトに取り組んでいます。

これに加えて、このアプリケーションの上にロードされる IFrame をサポートする必要があります。私が抱えている問題は、フラグメントを使用すると戻るボタンが壊れることです。

ajax ライブラリを使用していない非常に単純なサンプルを作成しました。それが持っているのは、URL と iframe にアンカーを追加するリンクと、その中にいくつかの通常のリンクだけです。

最初にアンカー リンクをクリックしてから、iframe 内のリンクをクリックすると、最初のバック クリックで元の iframe ページに戻り、2 回目のクリックで URL からアンカーが削除されると予想されます。

そこにあるさまざまなソリューション(YUIreallysimplehistoryjquery plugin)をすべて認識しており、それらはすべてうまく機能しますが、iframeには対応していません。

また、フレーム化されたページに JS を追加して、すべてのナビゲーションを親ページにルーティングできる可能性があることも認識していますが、それが必要ではないことを願っています。

問題は、このサンプルの履歴オブジェクトの内部で何が起こっているかを誰か説明できるかということ です。次に、親 iframe から履歴オブジェクトを誘導してこれらのナビゲーション エントリを取得するためにできることはありますか?

注: このサンプルでは、​​FF/Safari/Chrome についてのみ問い合わせています。IE は個別に検討する必要があります。

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

ajax - URL を # (アンカー) にリダイレクト

アンカー ナビゲーションを使用するように変換したばかりのサイトがあります。

hwww.site.com/shows は www.site.com/#shows になりました

/shows ディレクトリから div に情報を読み込み、ハッシュ タグを追加して現在地を知らせます。

問題は、www.site.com/shows にアクセスすると、コンテンツはまだそこにありますが、スタイルが設定されていないことです。リダイレクトの無限ループに陥らずにリダイレクトするにはどうすればよいですか?

私はそれをひどく説明したと確信しています。

0 投票する
6 に答える
14476 参照

javascript - JavaScript/jQuery - onhashchange イベントの回避策

すべてのブラウザーが onhashchange イベントをサポートするまで、これに対する最善の回避策は何ですか?

jQueryでこれに何かありますか? またはプラグインとして?

0 投票する
12 に答える
175076 参照

javascript - jQuery - ハッシュ変更イベント

私は使っている:

関数をハッシュ変更イベントにバインドします。これはIE8、Firefox、およびChromeでは機能するようですが、Safariでは機能せず、以前のバージョンのIEでは機能しないと思います. hashchangeこれらのブラウザーでは、ハッシュとイベント を使用する JavaScript コードを無効にしたいと考えています。

hashchangeブラウザがイベントをサポートしているかどうかを検出できるjQueryの方法はありますか? 多分何かjQuery.support...

0 投票する
5 に答える
3924 参照

ajax - AJAXを使用してフェッチされたページまたはコンテンツを「ブックマーク」する方法は?

AJAXを使用してフェッチされたページまたはコンテンツを「ブックマーク」する方法は?

「アンカー」に詳細を追加し、ルーティングを使用するか、PHPコードまたはRuby on Railsのroute.rbを使用してその部分をキャッチし、コンテンツまたはページを表示するだけで簡単にできるようです。によると?(ページ全体またはコンテンツの一部を表示)

それならそれはとても簡単にできますか?それがFacebookのやり方のようです。それを行う他の良い方法は何ですか?

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

javascript - JavaScriptまたはjQueryを介したhashchangeイベントでの画像の読み込みを停止します

jQuery BBQ:Back Button&Query Libraryプラグインを使用して、リンクがクリックされたときに動的コンテンツを取り込むページを作成しています。リンクがクリックされると、ハッシュが変更され、新しいコンテンツがプルされます(したがって、hrefをクリックする「デフォルト」アクションは無効になります)。

その部分は問題なく動作しますが、問題があります。

私の問題の例


「ホームページ」ページにDIVがあり、その中にいくつかの画像とリンクのリストがあるとします...

  • ページ1
  • 2ページ目
  • 3ページ目

画像の読み込みには時間がかかる場合がありますが、その間、ユーザーは画像が完全に読み込まれるのを待たずに[ページ1]リンクをクリックすることがよくあります。

これにより、「ホームページ」ページのコンテンツがクリアされ、「ページ1」のコンテンツが読み込まれます。それはうまくいきます。

問題は、ユーザーが「ホームページ」ページから移動した場合でも、「ホームページ」ページの画像がブラウザに読み込まれていることです。

ページが実際に変更されておらず、BBQプラグインのhashchangeハックを使用しているため、これが発生していることはわかっていますが、現在ロードされているすべての画像にhashchangeイベントで停止するようにJavaScriptで指示する方法があるかどうかを知りたいです

?? サンプルコードは次のようになります...


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

jquery - jQuery HistoryプラグインはChromeで動作しますか?

jQuery Historyプラグイン(http://www.mikage.to/jquery/jquery_history.html)はChromeで動作すると言われています。

http://github.com/tkyk/jquery-history-plugin

サポートされているブラウザIE6、IE7、IE8、Firefox3、Safari4、Safari5、Chrome4、およびChrome5

しかし、上記のトップリンクに移動すると、ロード1、ロード2、ロード3の順にクリックすると、戻るボタンでURLのハッシュ部分がに変更されますが、[#2ロードされたhtml:]セクションには「3 「…誰もが理由を知っていますか?