gpt4 book ai didi

jquery - 如何根据加载的页面使用 jquery 设置 CSS 样式?

转载 作者:行者123 更新时间:2023-11-28 02:13:03 24 4
gpt4 key购买 nike

我是 Jquery 的新手,所以我不太确定应该为我的案例使用哪些函数。

我有一个链接列表,如下所示:

<ul class="topmenu">
<li class="selected"><a href='index.html'>Hem</a></li>
<li class=""><a href='services.html'>Tjänster </a></li>
<li class=""><a href='about.html'>Om oss </a></li>
<li class=""><a href='vaccancies.html'>Lediga jobb </a></li>
<li class=""><a href='contact.html'>Kontakta oss </a></li>
</ul>

这是我的页脚的一部分,我使用 jquery 加载将这个页脚包含在我的所有页面中:

$('#footer_include').load('footer.html');

现在,我的问题是我希望能够根据用户当前所在的页面动态地将“选定”类设置为我的列表项。因此,如果用户在 vacancies.html 上,我希望将该列表项的类设置为“已选择”。所以我猜是这样的

$(document).ready(function () {
...
$(this).addClass('selected');
...

});

但是如您所见,我的代码不完整...有人可以帮我完成吗?我想我可能还需要向各个列表项添加 ID?

干杯!

最佳答案

添加自定义数据属性

<ul class="topmenu">
<li data-pathname="/index.html" class="selected"><a href='index.html'>Hem</a></li>
<li data-pathname="/services.html" class=""><a href='services.html'>Tjänster </a></li>
<li data-pathname="/about.html" class=""><a href='about.html'>Om oss </a></li>
<li data-pathname="/vaccancies.html" class=""><a href='vaccancies.html'>Lediga jobb </a></li>
<li data-pathname="/contact.html" class=""><a href='contact.html'>Kontakta oss </a></li>
</ul>

JQuery:

$('li[data-pathname="' + window.location.pathname + '"]').addClass('selected');

示例:http://jsfiddle.net/AlienWebguy/CstXK/

如果您想使用 PHP 来设置类,您可以这样做:

<?php

$selected['index'] = ($_SERVER['REQUEST_URI'] == '/index.html') ? $_SERVER['REQUEST_URI'] : '';
$selected['services'] = ($_SERVER['REQUEST_URI'] == '/services.html') ? $_SERVER['REQUEST_URI'] : '';
$selected['about'] = ($_SERVER['REQUEST_URI'] == '/about.html') ? $_SERVER['REQUEST_URI'] : '';
$selected['vaccancies'] = ($_SERVER['REQUEST_URI'] == '/vaccancies.html') ? $_SERVER['REQUEST_URI'] : '';
$selected['contact'] = ($_SERVER['REQUEST_URI'] == '/contact.html') ? $_SERVER['REQUEST_URI'] : '';

echo <<<HTML
<ul class="topmenu">
<li class="{$selected['index']}"><a href='index.html'>Hem</a></li>
<li class="{$selected['services']}"><a href='services.html'>Tjänster </a></li>
<li class="{$selected['about']}"><a href='about.html'>Om oss </a></li>
<li class="{$selected['vaccancies']}"><a href='vaccancies.html'>Lediga jobb </a></li>
<li class="{$selected['contact']}"><a href='contact.html'>Kontakta oss </a></li>
</ul>
HTML;

当然,可以使用数组迭代和 substr 等来清理 PHP,但您明白了。

关于jquery - 如何根据加载的页面使用 jquery 设置 CSS 样式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7080444/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com