ホケイ、私はすべて1つの静的ページindex.phpで動作するWebサイトを持っています。ページのコンテンツは、URL の変数によって決まります。
- index.php?site=ホーム
- index.php?site=フォーラム
- index.php?site=ニュース
それから私はもう少し長いものをいくつか持っています
- index.php?site=ニュース&アクション=アーカイブ
現在表示しているページのナビゲーション ボタンの色を変更するスクリプトを作成しようとしています。
私が取り組んでいるスクリプトは、ページの URL を取得し、.search を使用して ? の後のすべてを取得します。次に、文字列を分割して 2 番目の部分 (等号の後の部分) を取得しますが、これは 1 つの変数を持つものに対してのみ機能します。
解析された文字列に複数の「=」が含まれているかどうかを確認する if ステートメントの行に沿って何かを考えていました。最後の文字列の後のテキストを取得するかどうか。そのようなもの- idk私は完全な初心者です。
また、とにかく、javascript setAttribute を頭に入れることができますか、それとも ID/クラスが宣言された後にする必要がありますか?
<html>
<head>
<title>Test</title>
<style type="text/css">
.test {
color: yellow;
font-size: 5em;
}
</style>
<script type="text/javascript">
function parseUrl(url) {
var a = document.createElement('a');
a.href = url;
return a;
}
var page=parseUrl('').search;
var site=page.split("=")[1];
</script>
</head>
<body>
<ul>
<li id ="nav_home"><a href="testtest.html?site=home">Home</a>
<li id ="nav_forum"><a href="testtest.html?site=forum"/>Forum</a>
<li id ="nav_help"><a href="testtest.html?site=help"/>Help</a>
<li id ="nav_roster"><a href="testtest.html?site=roster"/>Roster<a/>
<li id ="nav_news"><a href="testtest.html?site=news"/>News<a/>
<li id ="nav_archive"><a href="testtest.html?site=news&action=archive"/>Archive<a/>
<script type="text/javascript">
document.getElementById("nav_" + site).setAttribute("class", "test");
</script>
</body>
</html>