a:visited
のスタイルはJavaScript経由でリクエストされたリンクでは動作しないことに気付いています。しかし、標準的なユーザークリックでは、まったく同じリンクがすぐに訪問したときに登録され、その後の更新で登録されます。これがjQuery Mobile(私が最初に遭遇した場所)に固有のものか、それとも私が知らなかったブラウザの制限であるかどうかは分かりません。AJAXのリンクが検出されないA:訪問済み
答えて
履歴と訪問済みリンクのスタイリングを使用する場合は、おそらくlocation.hashを変更する必要があります。
visited linkのスタイル設定は、訪問されたリンクベースの閲覧履歴のプライバシーの脆弱性が、Did You Watch Pornウェブサイトで一般的になった後、ブラウザ間でやや矛盾しています。
私はセレクタが知っています:visitedはCSS3から削除されましたが、古典的な動作はまだそこにあるはずです。そして、はい、location.hashが変更されます(前後のナビゲーションは正常に動作します)。上記のデモリンクを参照してください。 – Nariman
a:visited
は、ブラウザの履歴にあるURLを指すすべてのリンクに一致します。
AJAXを使用してURLへのナビゲーションをキャンセルすると、URLはブラウザの履歴に決して表示されません。
#
リンクを使用して修正できます。
ありがとうございますが、上記のデモリンクをご覧ください。 – Nariman
a:visitedとのスタイルを共有するajaxコールバックを使用して、リンク上にクラスを設定することはいつでも可能です。
a:visited
は、リンクが「実行」されている場合にのみトリガーされます。
AJAX呼び出しへのリンクは、通常、「偽」を返します(ハッシュ(<a href="#">link</a>
)の解決策は、偽を返します。そうでなければ、ユーザーはページの先頭にジャンプします)。
このように、リンクは決して「実行」されていないため、訪問したとマークされません。
ありがとうございます。私にはちょっと変わったようですが、あなたが正しいと思います。私は、ブラウザがそのページへのリクエストを行い、そのページへのその後の訪問時にそのキャッシュにコピーを持っていることを意味します...直観的に、これは訪問の資格を与えます。 – Nariman
いいえ、a
要素のhref
は、他の回答者が言っているようにハッシュされたURLを指すように変更しないでください。新しいウィンドウで開く場合は、二重の読み込みが必要になります。サーバー側の変更を行うと、検索エンジンやjsが無効になっているユーザーが壊れてしまいます。
ハッシュを使用してウェブサイトをRIA(リッチインターネットアプリケーション)にアップグレードすると、リンクはmysite.com/page
を指しますが、実際にはmysite.com/#/page
にアクセスするため、実際にはアクセスしないという問題があります。
ここでの適切な解決策は、HTML5履歴APIを使用することです。このAPIを使用すると、URLを直接変更してURL変更につなげることができます(ハッシュの必要がなくなるため)。あなたはハッシュの長所と短所、さらにHTML5履歴APIとの対比についてはこちらをご覧ください: https://github.com/browserstate/history.js/wiki/Intelligent-State-Handling - HTML5 History APIでウェブサイトをアップグレードするためのサンプルコードもあります。
jQuery Mobileは今後、HTML5の履歴APIに使用される予定です(現在作業中ですが、今は実装が完了するのを待っています)。
- 1. CSS - a:訪問済み:ホバー?
- 2. Chromeの訪問済みリンクを検出する
- 3. jQueryを使用して訪問済みリンクを選択
- 4. ブラウザが訪問済みのリンクを区別しているかどうかを検出するにはどうすればよいですか?
- 5. ユーザーが訪問したウェブサイトの検出
- 6. ブートストラップと訪問されたリンク
- 7. プリコンパイル済みヘッダーの検出
- 8. サブクラス化されたノード上の訪問者がいるC++訪問者パターンは "is a"の関係を失う
- 9. AJAXコール後の承認済み応答の検出
- 10. 訪問先リンクのアンダーライン
- 11. AJAX訪問元の取得
- 12. 訪問したリンクでCSSの遷移が動作しない
- 13. C# - ウェブサイトが訪問されたかどうかを検出する方法
- 14. ajaxによって画像のクロップが検出されない
- 15. 作成済み異なるグループに限定されたリンク
- 16. サイト内の「最も訪問された」リンク/ページを取得
- 17. 効率的なキーワードの検出/抽出。定義済みキーワード
- 18. カピバラの訪問でページがロードされない
- 19. admin-ajaxページは、ウェブサイトで最も訪問されたページです。
- 20. HTTPサイトでChromeの場所が検出されない - 問題
- 21. A-Frameでビデオテクスチャがいつ検出されるのか?
- 22. jQueryのリンクで訪問設定
- 23. 検証済みメソッドが起動し、定義されていないエラーが返される
- 24. a:CSSルールに従わないリンクを訪問しました
- 25. リンク:兄弟では動作しない訪問は、リンクが訪問したとき、私は隣の要素のスタイルを変更する必要が
- 26. 修正済み - AJAXとデータリスト
- 27. カスタムナゲットフィード、VSにインストール済みのパッケージが表示されない
- 28. Eclipse Oxygen |インストール済みのDroolsプラグインが表示されない
- 29. ラジオボックスがFirefoxの「チェック済み」ステータスにリセットされない
- 30. 送信済みアイテムフォルダのWebhook通知が取得されない
コードを教えてください。私は、その事故で「間違っている」と誤っている可能性があると推測しています。 falseが返されるため、デフォルトアクションは防止され、実際にリンクを訪問したように登録されていません。 –
jQuery Mobileのコンテキストにある標準の>がこれを示しています。デモサイトをチェックして、そこにvisitedスタイルを挿入して動作を確認してください:http://jquerymobile.com/demos /1.0a3/。 – Nariman