問題タブ [fragment-identifier]
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.
javascript - フレーム内の location.hash の設定
フレーム内のページの位置を更新するために ajax を使用しています。ただし、ハッシュの場所を設定すると (特に Chrome と IE (5.5) の一部のバージョンで、IE7 で時折) ページがリロードされます。
次の html は、問題を示しています。
メインフレーム.... frame.html は
sethash.html ページは .
ほとんどのブラウザーでは、frame.html をロードすると、ページがロードされるとロード済みアラートが 1 回表示されます。次に、ハッシュの設定ボタンが押されると、URL は変更されますが、読み込まれたアラートのハッシュは再び表示されません。Chrome および一部のバージョンの IE
Microsoft は、Internet Explorer 5.5 のリンク テキストでおそらく同じ問題を報告しています。
onLoad イベントの一部として top.location.hash を設定して使用しているため、イベントをキャプチャして発生させずにスクロールして表示するという Microsoft が推奨するソリューションを使用することはできません。
javascript - ロケーションハッシュの変更を検出するにはどうすればよいですか?
ナビゲーションにAjaxとハッシュを使用しています。
window.location.hash
このように変更されたかどうかを確認する方法はありますか?
http://example.com/blah#123からhttp://example.com/blah#456 _ _
ドキュメントの読み込み時に確認すれば動作します。
しかし、#hashベースのナビゲーションがある場合、ブラウザの戻るボタンを押しても機能しません(したがって、blah#456からblah#123にジャンプします)。
アドレスボックス内に表示されますが、JavaScriptではわかりません。
jquery - フラグメント識別子へのリダイレクト/リフレッシュ
iUI フレームワークを使用してサイトを作成しています。これに慣れていない場合は、div で構成される 1 つのページがあり、フラグメント識別子を使用してユーザーをナビゲートします。
これに関する問題は、ユーザーがコンテンツを追加した場合、更新するまで表示されないことです。私の状況では、jquery の投稿を介してリストにデータを追加しますが、私が言うように、更新するまで何も表示されず、更新を行うと #fragment が失われたため、親 div に移動します。
そのため、更新後に window.location = mywebsite.com/#_fragment を使用してページを mywebsite.com/#_fragment に移動することができましたが、実際にはページをリロードしません。
ページをフラグメントに更新する方法を知っている人はいますか?
javascript - URL ハッシュが変更された場合、ページに異なるコンテンツが表示される可能性はありますか?
URL ハッシュに基づいてページに異なるコンテンツを表示するにはどうすればよいでしょうか?
アンカーされたセクションを表示するためにブラウザーが下にスクロールすることについて話しているのではなく、そのハッシュに反応し、AJAX を介してさまざまなコンテンツをロードする JavaScript のようなものです。
これは一般的ですか、それとも可能性がありますか?
javascript - iframe で親の URL フラグメントを変更するにはどうすればよいですか (更新を行わずに)?
親ドキュメントを更新する子 JavaScript アプリケーションを取得しようとしています。
本質的に、これは非常に単純な問題です。
- JavaScript プログラムは、独自のドキュメントで iframe を開きます。
- 別の JavaScript プログラムが iframe に読み込まれます。
- 2 番目のプログラムは、元のページのフラグメント (アンカー) を変更する必要があります。
- 最初のプログラムは、新しいフラグメントに「移動」します (ドキュメントの位置は更新されますが、ドキュメントは更新されません)。
無数の Web ページに、次のようなトリックを使用してこれを行う方法が説明されています。
しかし、IE でこれを行うと、親が更新されているように見えます。ページがリロードされていると思います。
これを少しトリッキーにするために:
- すべてのブラウザー (または少なくとも IE と Firefox) 用のソリューションが必要です。
- どちらの JavaScript プログラムも実際には GWT Web アプリです (そのため、特定のコードをさまざまなブラウザー バージョンに関連付けることができます)。
- 必要に応じて、セキュリティを回避するために奇妙なことを行うことができます。親と子は常にお互いに認識されます。子は常に親によって呼び出されます。
さまざまな Web ページにリストされている他の多くのトリックを試しましたが、これまでのところ、実際に展開できるほど安定していてシンプルなものはありません。
javascript - JavaScriptでハッシュ/アンカーの変更の履歴を保持する
私は現在、アドレスバーのハッシュ部分への変更の履歴を追跡するJavaScriptライブラリを実装しています。ハッシュ部分に状態を保持してから、戻るボタンを使用して前の状態に戻ることができるという考え方です。
最近のほとんどのブラウザーでは、これは自動でありlocation.hash
、変更についてプロパティをポーリングするだけで済みます(IE8では、それを行う必要はありませんonhashchange
。イベントに関数をアタッチするだけです)。
私が疑問に思っているのは、履歴を追跡するためにどのような異なる方法がありますか?Internet Explorer 6/7/8、Firefox、Chromeで動作することがテストされている機能を実装しましたが、他のブラウザーはどうですか?これが私が現在履歴を保持する方法です:
編集:さまざまなブラウザのウォークスルーについては、代わりに以下の私の答えを参照してください。
php - PHP & ハッシュ / URL のフラグメント部分
URL のハッシュ部分を PHP 変数として保存する方法を見つけようとしています。このアイデアは少し変わっていますが、ご了承ください...
次の URL から「場所」フラグメントを抽出し、PHP 変数として保存したいと考えています。
ただし、このリンクでの議論は、URL のフラグメントは JavaScript を介してのみ到達可能であることを示しています。
しかし、フラグメントが URL で複製され、PHP によって解析され、mod の書き換えによって削除されるリンクを作成することは可能でしょうか? そう....
元の URL:
PHP は、URL の単純な「場所」のおかげで場所変数を取得します
次に、Apache はリンクを次のように書き換えます。
この問題を解決するエレガントな方法があるかどうか知りたいです。
css - URL フラグメントは CSS レイアウトにどのように影響しますか?
次の 3 つの URL を比較してください (それぞれの場合の上部のナビゲーション バーを見てください)。
- http://fast.kirkdesigns.co.uk/blog
- 上記と同じですが、URL フラグメント #navigation を使用
- 上記と同じですが、URL フラグメント #node-2655 を使用
唯一の違いは、末尾の URL フラグメントであることに注意してください。
最初の 2 ページはまったく問題なく表示されます (少なくとも Firefox では)。問題があるのは3つ目です。フラグメント #node-2655 は、上部のナビゲーション バーを画面の上部から押し出します。ページの上部までスクロールすると、ナビゲーション バーが半分にカットされています。これは、ページが最初にロードされたときにナビゲーションバーが最初のビューポートの外に出る原因となる URL フラグメントを使用した場合に発生します。
では、url フラグメントを使用すると、このような css レイアウトにどのように影響するのでしょうか?!
解決策: 以下で提案されているように、navbar を保持していたコンテナー要素のオーバーフロー: hidden を削除すると、問題が修正されました。でも、その理由を理解したいです!
jquery - ハッシュ後の URI へのデータの格納
次のように、クライアント側で使用するためにハッシュの後にキーと値のペアを URI に格納したいと考えています。
すでにこれを行う既存のソリューションはありますか、それとも自分で作成する必要がありますか? 私はすでに JQuery を使用しているので、JQuery ソリューションは特に歓迎されます。
私の最初のアイデアは正規表現を使用することでしたが、特にキーと値の両方をエスケープする必要がある場合は複雑になります。
編集:明確にさせてください。私はこのようなことをしたい:
javascript - Jquery-ハッシュがいつ変更されるかを教えてください?
サイトが戻るボタンに正しく応答するようにしようとしています。やりたいことのハッシュを保存しましたが、ハッシュがいつ変更されたかをjQueryが判断できるようにするためのフックがわかりません。ページがリロードされないため、.ready()ではありません。何を使いますか?
少し明確にするために編集します。
iframeを使用しているので、誰かがリンクをクリックしたときにわかりません。同じサブドメインにあるので、ファイルパスを確認でき、ブックマークできるように保存しています。残念ながら、ハッシュとして保存すると、戻るボタンがリロードに失敗し、iframeのリロードに失敗するため、戻るボタンは基本的に壊れています。URIがいつ変更されるかを知る方法があれば、iframeアドレスと照合して、一致しない場合は変更することができます。
必要なのは、URIが変更されたかどうかを確認する方法だけです。URIに.change()はありますか?それらの線に沿って何か?