先端のいくつかの理論知識
漸進的な強化&優雅な降格
優雅なダウングレード:最初からサイトの完全な機能を構築し、ブラウザのテストと修復を行います.
.transition { /* */
transition: all .5s;
-o-transition: all .5s;
-moz-transition: all .5s;
-webkit-transition: all .5s;
}
漸進的な拡張:最初はサイトの最小限の機能のみを構築し、各ブラウザに機能を追加します.
.transition { /* */
-webkit-transition: all .5s;
-moz-transition: all .5s;
-o-transition: all .5s;
transition: all .5s;
}
ブラウザ互換性の問題
CCS: *{margin:0; padding:0}
画像のデフォルトには間隔があります.いくつかのimgラベルが一緒に置かれている場合、一部のブラウザではデフォルトの間隔があり、問題1で述べたワイルドカードを付けても機能しません.解決:float(フローティング)アトリビュートをimgレイアウトに使用する
フロントエンド開発の最適化問題
(1)httpリクエスト回数を減らす:css spirit,data uri(2)JS,CSSソース圧縮(3)フロントエンドテンプレートJS+データ,HTMLタグによる帯域幅浪費を減らす,フロントエンドは変数でAJAXリクエスト結果を保存し,ローカル変数を操作するたびにリクエストを使わずにリクエスト回数を減らす(4)DOM操作の代わりにinnerHTMLを用いてDOM操作回数を減らす,Javascriptパフォーマンスの最適化(5)settimeoutを使用してページの応答を失うことを回避(6)hash-tableを使用して検索を最適化(7)設定するスタイルが多い場合styleを直接操作するのではなくclassNameを設定(8)グローバル変数(9)でDOMノードをキャッシュして検索した結果を少なくする(10)CSS Expression(11)ピクチャのプリロードを回避(12)ページの本体レイアウトでtableを使用しないtableはその中の内容が完全にダウンロードされてから表示され、div+cssレイアウトよりも遅く表示されます.
FOUC(スタイルなしで点滅)とは何ですか?FOUCを避けるにはどうすればいいですか?
css導入は@importを使用しているか、複数のstyleラベルが存在し、cssファイルがページの下部に導入されているため、htmlにcssファイルをロードした後、ページが点滅し、スクリーンがlinkでcssファイルをロードし、headラベルの中に置く
display:noneとvisibility:hiddenの違い
display:noneは対応する要素を非表示にし、ドキュメントレイアウトにスペースを割り当てないで、彼が存在しないときにします.Visibility:hiddenは対応する要素を非表示にしますが、ドキュメントレイアウトには元のスペースが保持されます.
srcとhrefの違い
srcは外部リソースの位置を指し、jsスクリプト、ピクチャなどの要素hrefがネットワークリソースの位置を指すなどの現在の要素を置き換えるために使用され、現在のドキュメントと参照リソースの間で連絡を特定し、cssをロードするために使用されます.
ajax
$.ajax({
type : "POST", //
url : "……",//
data : {
"org.id" : "${org.id}"
},// , Json
success : function(result) {//
}
});
JSクローズ
閉パケットとは、別の関数の役割ドメインにアクセスする権限を持つ変数の関数である.クローズドパッケージを作成する一般的な方法は、1つの関数の内部に別の関数を作成することです.役割:匿名自己実行関数(function(){...})();匿名の関数を作成し、すぐに実行します.外部では内部の変数を参照できないため、実行が完了するとすぐに解放されます.このメカニズムがグローバルオブジェクトを汚染しないことが重要です.キャッシュ、関数内部の値を保持してパッケージ実装テンプレートを実装
undefinedとnullの違い、そしてundeclared:
nullは、オブジェクトがないことを示す、すなわち、ここにこの値があるべきではない.一般的な使い方:(1)関数のパラメータとして、その関数のパラメータがオブジェクトではないことを示す.
(2)オブジェクトプロトタイプチェーンの終点とする.
(3)nullは空のポインタとすることができる.保存対象の値が本当に保存することを意図する限り、null値を明確に保存させるべきである.undefinedは欠落値を表す、すなわちここに値があるべきであるが、まだ定義されていない.(1)変数が宣言されたが,付与されていない場合はundefinedに等しい.
(2)関数を呼び出す場合,提供すべきパラメータは提供されず,undefinedに等しい.
(3)オブジェクトにはundefinedの値を持つ付与された属性がない.
(4)関数が値を返さない場合、デフォルトではundefinedが返されます.
undeclaredは汚染された名前であり、宣言されていない変数にアクセスすると異常が投げ出され、実行が終了する.すなわちundeclaredは構文エラーです