私は私のページに、私は別のファイルnav01.phpに配置した内部の内容は、多くを変更するために使用され、別の単一ファイル。問題は、すべてのページで同じファイルを使用したいのですが、可能であれば、現在のページを可能な限りアクティブにすることです。jQueryのロードメソッドとBoostrapのnavbarがアクティブ
私はすべてのページにnavbarコードを持っていましたが、それは機能しましたが、seaparateファイルに移動してすべてのページにjquery loadメソッドで読み込むと動作しません。ファイルは正常に読み込まれますが、現在のページをアクティブとしてマークするために使用したコードはもう機能しません。何もしません。
<script type="text/javascript">
$(document).ready(function() {
$("li a[href='" + location.href.substring(location.href.lastIndexOf("h/") + 1, 255) + "']").parent().addClass("active");
});
</script>
これは私が使用してロードコールされています。これは、新しいファイルに移動する前に働いていたスクリプトです
<div class="container-fluid">
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#myNavbar">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href='home.php'><span class="glyphicon glyphicon-home"></span></a>
</div>
<div class="collapse navbar-collapse" id="myNavbar">
<ul class="nav navbar-nav">
<li><a href='documentation.php'>Documentation</a></li>
<li><a href='admin.php'>Admin</a></li>
<li><a href='login.php'>Login</a></li>
</ul>
</div>
</div>
:
この
はnav01.php、私のナビゲーションバー内のコンテンツです他のすべてのPHPページにnav01.phpを書き込むため:$(document).ready(function(){
$("#nav01").load("nav01.php");
});
スクリプト/ script.jsを呼び出すだけで
ののphpファイルはIDのみでNAVを持って、一番下にロードされた私のスクリプト:私はそれを理解していれば、問題は、私はjQueryのコードを使用しようとしている
<nav class="navbar navbar-inverse" id="nav01"></nav>
<script src="script/script.js"></script>
、クライアント側、PHPページでは、サーバーが実行し、 "そのまま"読み込みますか?ページを読み込むと、それはもはや変更することができません。なぜなら、そのコードがそのPHPページに呼び出されていないからです。 nav01内のスクリプトコードは現在の場所を取得しますが、実行されるとnav01ページ内にあるので、アクティブなページはないので何もしません。
私はここで多くの答えを探していますが、私の状況には何もありませんでした。私は解決策を見つけられませんでした。$ _SERVER ['REQUEST_URI'] phpはnav01.php、 navが挿入されるページのアドレスを指定してjQueryロードメソッドを介してGET変数を送信できるかどうかはわかりません。
ありがとうございました。
それは私が同じのために考えては動作しませんので、負荷が成功を収めたが、nav01た後に呼び出された場合、このコールバック関数。 PHPはクライアント側にないと思うので、selectは何もしません。 – AitorMotril