URL 内の特殊記号の意味を知っていますか?

URL 内の特殊記号の意味を知っていますか?

1.#

# は Web ページ内の場所を表します。右側の文字はその位置の識別子です。たとえば、http://www.example.com/index.html#print は、Web ページ index.html の印刷場所を表します。ブラウザはこの URL を読み取ると、印刷位置を可視領域まで自動的にスクロールします。

Web ページの場所の識別子を指定する方法は 2 つあります。 1 つは <a name="print"></a> などのアンカー ポイントを使用する方法で、もう 1 つは <div id="print"> などの ID 属性を使用する方法です。

2. HTTPリクエストに#が含まれない

# はブラウザのアクションをガイドするために使用され、サーバー側ではまったく役に立ちません。したがって、HTTP リクエストには # が含まれません。

たとえば、次の URL http://www.example.com/index.html#print にアクセスすると、ブラウザから実際に送信されるリクエストは次のようになります。

XML/HTML コードコンテンツをクリップボードにコピー
  1. GET /index.html HTTP/1.1
  2. ホスト: www.example.com

3. #の後の文字

最初の # の後に表示される文字は、ブラウザによって場所識別子として解釈されます。つまり、これらの文字はいずれもサーバーに送信されません。

たとえば、次の URL は色の値を指定することを目的としています: http://www.example.com/?color=#fff ですが、ブラウザーによって実際に送信されるリクエストは次のようになります:

XML/HTML コードコンテンツをクリップボードにコピー
  1. GET /?= HTTP /1.1
  2. ホスト: www.example.com

4. 変更 #Webページのリロードをトリガーしない

# の後の部分を変更するだけで、ブラウザは Web ページを再読み込みせずに、対応する位置までスクロールするだけになります。

たとえば、http://www.example.com/index.html#location1 から http://www.example.com/index.html#location2 に変更すると、ブラウザはサーバーに index.html を再度要求しなくなります。

5. #を変更するとブラウザのアクセス履歴が変更されます

# 以降を変更するたびにブラウザのアクセス履歴に記録が追加されます。「戻る」ボタンで前の位置に戻ることができます。これは、異なる # 値を使用してさまざまなアクセス状態を表し、ユーザーに特定の状態にアクセスするためのリンクを提供できる Ajax アプリケーションに特に役立ちます。上記のルールは IE 6 および IE 7 には適用されないことに注意してください。これらの IE および IE 7 では、# の変更により履歴レコードが追加されません。

6. window.location.hashは#valueを読み取ります

window.location.hash プロパティは読み取りおよび書き込み可能です。読み取り時には、Web ページの状態が変化したかどうかを判断でき、書き込み時には、Web ページをリロードせずにアクセス履歴レコードを作成します。

7. onhashchange イベント

これは HTML 5 の新しいイベントです。# 値が変更されると、このイベントがトリガーされます。このイベントは、IE8 以降、Firefox 3.6 以降、Chrome 5 以降、Safari 4.0 以降でサポートされています。

使用方法は3つあります。

•window.onhashchange = func;
•<body onhashchange="func();">
•window.addEventListener("hashchange", func, false);

onhashchange をサポートしていないブラウザの場合は、setInterval を使用して location.hash の変更を監視できます。

8. Googleのクロールの仕組み #

デフォルトでは、Google のウェブ スパイダーは URL の # 部分を無視します。

ただし、Google では、Ajax によって生成されたコンテンツをブラウジング エンジンで読み取る場合は、URL で「#!」を使用すると、それ以降のコンテンツがクエリ文字列 _escaped_fragment_ の値に自動的に変換されると規定しています。

たとえば、Google は Twitter の新しいバージョンの URL を見つけました: http://twitter.com/#!/username

自動的に別の URL を取得します: http://twitter.com/?_escaped_fragment_=/username

このメカニズムを通じて、Google は動的な Ajax コンテンツをインデックスできます。

注記

AJAX = 非同期 JavaScript および XML (Standard Generalized Markup Language のサブセット)。 AJAX は、高速で動的な Web ページを作成するためのテクノロジーです。

2. ?

1) 接続機能: 例えば

XML/HTML コードコンテンツをクリップボードにコピー
  1. http://www.xxx.com/Show.asp?id=77名前ID = 2905210001ページ= 1   

2) キャッシュをクリアする: 例えば

XML/HTML コードコンテンツをクリップボードにコピー
  1. http://www.xxxxx.com/index.html 英語:
  2. http://www.xxxxx.com/index.html?test123123 より

2 つの URL で開かれるページは同じですが、末尾に疑問符が付いています。これは、キャッシュされたコンテンツが呼び出されるのではなく、新しいアドレスとみなされて再度読み込まれることを意味します。

3. &

異なるパラメータの区切り文字

JavaScriptコードコンテンツをクリップボードにコピー
  1. java.util.ArrayListをインポートします
  2.   
  3. クラスNode{
  4.     整数値;
  5. ノード leftNode;
  6. ノード rightNode;
  7.     パブリックNode( int val, Node leftNode, Node NodeRight){
  8.          this .val = val;
  9.         これは.leftNode = leftNode です。
  10.          .rightNode を rightNode にします
  11. }
  12. }
  13. 公共 クラスInOrder{
  14.        
  15.     静的ArrayList<Integer> arrayList =新しいArrayList<Integer>();
  16.        
  17.     公共 静的  void main(文字列args[]){
  18.          //ツリーを構築する  
  19. ノード E = new Node(5, null , null );
  20. ノード D = new Node(4, null , null );
  21. ノード C = new Node(3, null , null );
  22. ノード B =新しいノード (2, D, E);
  23. ノードA =新しいノード(1, B, C);
  24.            
  25. 順序(A);
  26.          ( int i = 0; i < arrayList.size(); i++) {
  27.              //System.out.print(arrayList.get(i)+" ");   
  28. }
  29. }
  30.        
  31.     公共 静的  void inOrder(ノードルート){
  32.         ルートがnull場合
  33. inOrder(ルートの左ノード);
  34. 配列リストにルート val を追加します。
  35. inOrder(ルートの右ノード);
  36. System.err.print(root.rightNode + " " );
  37. }
  38. }
  39. }

JavaBean と POJO の違いは何ですか?

つまり、set メソッドと get メソッドを備えた pojo は JavaBeans です。しかし、JavaBean には設定と取得以上の機能があり、どの Java クラスも JavaBean になることができます。

POJOとは何か

Martin Fowler の説明によると、これは「Plain Old Java Object」であり、文字通り「純粋な旧式の Java オブジェクト」と翻訳されますが、誰もがこれを「単純な Java オブジェクト」と呼んでいます。 POJO の本質的な意味は、どのクラスからも継承せず、どのインターフェースも実装せず、他のフレームワークによって侵害されない Java オブジェクトを指します。

POJOとJavaBeanの比較

pojo 形式は一時的なデータ転送に使用され、データ保存のキャリアとしてデータをロードすることしかできず、ビジネス ロジックを処理する機能はありません。

javabean のデータ取得は pojo と同じですが、javabean には他の方法もあります。

JavaBean は、JAVA 言語で記述された再利用可能なコンポーネントです。メソッドの命名、構築、および動作は、特定の規則に準拠する必要があります。

1. このクラスにはパブリック デフォルト コンストラクターが必要です。
2. このクラスのプロパティにはゲッターとセッターを使用してアクセスし、他のメソッドは標準の命名規則に従います。
3. このクラスはシリアル化可能である必要があります。

オリジナル URL: http://www.cnblogs.com/androidshouce/archive/2016/06/17/5592867.html

<<:  ローカル フォルダー内の画像を読み込んで表示するための HTML サンプル コード

>>: 

推薦する

Docker Composeを使用してDOCleverをインストールする詳細なプロセスを説明します

目次1. Docker Composeとは何か、インストールして使用する方法2. DOCleverと...

WeChatアプレットwebViewにH5を埋め込む方法の例

序文WeChat ミニプログラムは新しいオープン機能を提供します!ついにミニプログラムにHTMLペー...

Matlab による JavaScript プログラミング、重心アルゴリズムによる位置決め学習

目次Matlab セントロイドアルゴリズムMatlab はクローズドな商用ソフトウェアであり、米国政...

つまり、フィルターコレクション

IE は開発の初期段階では頭を悩ませましたが、他のブラウザとは異なります。他のブラウザがサポートして...

Flex レイアウトで適応型ページを作成する (構文と例)

Flex レイアウトの紹介英語の Flex はフレキシブル ボックス、つまり伸縮性のあるボックスを...

1時間で学ぶMySQLの基礎

目次MySQL を使い始めるMySQL 管理6. MySQL サーバーを起動および停止します。 7....

MySQL の 4 つのトランザクション分離レベルの詳細な説明

この実験のテスト環境: Windows 10+cmd+MySQL5.6.36+InnoDB 1. ト...

vuexサードパーティパッケージを使用してデータの永続性を実装する方法

目的: vuex で管理されている状態データを同時にローカルに保存できるようにします。独自のストレー...

JavaScript での HTML キャンバスとページ ストレージ テクノロジの使用に関する詳細な説明

目次1. JavaScriptはHTMLでキャンバスを使用する2. ページストレージ技術1. Jav...

Windows 8.1 で MySQL5.7 のルート パスワードを忘れた場合の解決方法

【背景】最近勉強中に非常に恥ずかしいことに遭遇しました。MySQL のパスワードを忘れてしまい、My...

Vueインスタンスで$refsを使用する際の注意点

開発の過程では、インスタンスの vm.$refs(this.$refs) を使用して、ref で登録...

MySQL マスタースレーブレプリケーション 読み書き分離の設定方法の詳細説明

1. 説明前回は、MySQL のインストールと構成、MySQL ステートメントの使用、MySQL デ...

Vue フロントエンド開発における階層的にネストされたコンポーネント間の通信の詳細な説明

目次序文例まとめ序文Vue の親子コンポーネントは、props を通じて親コンポーネントの値を子コン...

HTML thead タグの定義と使用法の詳細な紹介

コードをコピーコードは次のとおりです。 <thead> <!– 最初の 2 行をヘ...

Flexレイアウトを使用してdiv内のサブ要素を垂直方向に中央揃えする例

1. Flex は Flexible Box の略で、「柔軟なレイアウト」を意味し、ボックス モデル...