2012-03-14 10 views
0

私はすべてのページを再作成したくない単純なHTMLナビゲーションバーを持っています。私はこれをPHPを使用して簡単に行うことができますが、jQueryを使用して簡単に行う方法はありますか?jQueryを使用して共通コードを含める?

もしそうなら、それを行うには "corrcect"ですか?あなたは、ユーザーのブラウザは、最も可能性が高いでしょう何度もこのスクリプトの詳細が含まれている場合

<script type="text/javascript" src="path_to_your_script"></script>

: - あなたのナビゲーションバーを生成し、いくつかのJavaScriptコードをお持ちの場合

+2

99.999%の時間、それは**そうではありません**。 –

答えて

0

それは、(少なくとも、jQueryのを使用している場合)JavaScriptでHTMLを作成し、.jsファイルが含まれるすべての文書に挿入するために非常に簡単です、あなたがしなければならないすべてはのようなものです:

$('<div id="mydiv"><span>Hello World</span></div>').appendTo('somelement'); 

あなたのJavaScriptにHTMLを混ぜることは悪い習慣を考慮しているので、それはいくつかの正当な理由がない限り、これを行うには悪い考えです。 これはJSの問題がないユーザーに提供されます。要素が動的に挿入され、それに応じてイベントとリスナーを設定する必要があるため、より多くの問題が発生します。

+1

JSを使わずに効果的にブラウズできますか?対処するのが本当の問題ですか? – maddogandnoriko

+2

@maddogandnoriko:はい。アクセシビリティ上の理由から他に何もない場合。 –

+1

私は、ほとんどの場合、Javascriptを使用していない人にケータリングを中止しました。モバイルクライアントを含むほとんどの人が、JSに対応しています。ほとんどの場合、JSが必要であることを知らせるノンススクリプトを追加します。 – xbonez

0

は、ちょうどあなたのマークアップでそのスクリプトへの呼び出しを含めますスクリプトをキャッシュし、次回の要求時にキャッシュからロードされます。

ユーザーがページに到着するたびに、HTMLは基本的にすべて「再作成」されます。 PHPを使用していても、ページが読み込まれるたびにコードが実行されます。ユーザーは(そう、まだ可能性身震い)JavaScriptを無効にしていることをイベントで


、あなたはPHP生成されたナビゲーションバーにあなたのjQueryのナビゲーションバーを交換フォールバックシステムを実装したい場合があります。そのためには
<noscript>タグを使用できます。

(taken from here)

<script type="text/javascript"> 
    document.write('<b>Hello Javascript World</b>'); 
</script> 
<noscript> 
    Hello World Without Javascript 
</noscript> 
0

Javascriptが既存の要素に機能を追加するために使用されなければなりません。それを使用してナビゲーション構造を作成することは非常に危険です。ユーザーがjavascriptを無効にしていると、どのようにサイトをナビゲートしますか?

私はあなたのコードをPHPインクルードファイルに入れます。

関連する問題