2010-11-19 25 views
1

PHPを使用してJSナビゲーションを生成しています。スクリプトがそのようにPHPで生成されたJavaScriptファイルを参照するページの検出

<script type='text/javascript' src='/topNav.js.php'></script> 

のように含まれている私は、現在のページのリンクのためのクラスを割り当てるにはPHPではなくJavaScriptを使用したいと思いますが、$ _SERVER VARSのすべてがtopNav.js.phpの場所を参照してください。

私は

if(window.location.href == 'myurl') { 
    document.getElementById('itemx').className += 'active'; 
} 

のようなJSのものを使用することができます知っているが、私はPHPを経由して、これを行うには良い方法があったかどうかを知りたかったです。

答えて

0

私は考慮していなかったPHPフッタを含んでいます。ちょうど加えられた

<script type="text/javascript"> 
    <? $pg = preg_replace('/\//', '', $_SERVER['REQUEST_URI']); ?> 
    document.getElementById('nav_<?=$pg?>').className += ' qmactive '; 
    </script> 

遅延して機能的です。

1

「外部」スクリプトファイルを呼び出す前に、現在のページをPHPでJavascriptに書き込むことができます。この変数は、外部スクリプトで使用可能になります

<script type="text/javascript"> 
<?php 
    echo "var CurrentPage = '" . $_SERVER["REQUEST_URI"] . "';"; 
?> 
</script> 
<script type='text/javascript' src='/topNav.js.php'></script> 

何かのように...。手動で外部に設定しない場合は、外部スクリプトに何かを設定して値が設定されていることを確認することができます。これはエラー処理のための良い習慣になります。

関連する問題