0

次のようなjQueryifステートメントを作成しようとしています。ユーザーが指定されたページにいる場合は、指定されたスタイルを適用します。この場合、アンカータグのIDに下枠を付けています。

// index.php - referenced html
...
<link href='http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js' type='text/javascript' />
<style type="text/javascript">
@import url('js/active-links.js');
</style>
...
<ul>
    <li><a id="home" href="#">HOME</a></li>
    <li><a id="other1" href="#">OTHER1</a></li>
    <li><a id="other2" href="#">OTHER2</a></li>
</ul>
...


// active-link.js 
$(document).ready(function() {
    if (document.URL.indexOf('index.php') >= 0) {
        $('#home').css('border-bottom: 18px solid #9cd588');
                                            }
                       });

理想的には、同じことを述べている場合は、elseを使用して各リンクにこれを適用します。現在、何もしていません。

4

2 に答える 2

1

簡単な解決策:

$('#home').css('border-bottom', '18px solid #9cd588');
于 2012-04-04T20:38:20.180 に答える
0

あなたは間違った問題に取り組んでいます。

サーバー側で、メニューからアクティブなリンクを決定しactive、アクティブなメニュー項目にクラス名を追加します。

$active = "Home";
...
echo "<li";
if ($active == "Home") { echo " class=\"active\" "; }
echo ">Home</li>";

次に、CSSで、条件なしで次のようにします。

.active { border-bottom: 18px solid #9cd588; }
于 2012-04-04T20:53:56.123 に答える