余赚网 发表于 2025-3-31 23:39:25

给大家一段福利代码:贴子详情页也能正确展示所属版块 New

注:如果你的版块名称/链接是在主导航栏上的,可以用以下代码,反之就不要看了。

默认情况下,在贴子详情页,主导航栏的默认选中“论坛”选项卡,但我的贴子明明是属于xxxx版块呀,为什么不会自动定位到主导航栏上的xxxx版块呢?

那是因为你没有加以下代码:
修改文件:
template\default\common\footer.htm

找到这一句: 在其上加以下代码:
      if(jQuery&& fid) {                jQuery(document).ready(function(){                        jQuery('#nv > ul > li').removeClass('a');                        jQuery('#nv > ul > li a').parent().addClass('a');                });      }清理模板缓存和数据缓存后,到贴子详情页刷新一下页面看看,有没有自动定位到主导航栏的版块。


有眼尖的小朋友看到主导航栏自动切换了一下,觉得 心里不爽,能不能打开页面就自动定位,不要让它这样明显的切换。
可以试一下用:


上面的那一段JS代码


清理模板缓存和数据缓存后,到贴子详情页刷新一下页面看看???


为了体验,你确定不试一下吗?

ROBOT 发表于 2025-3-31 23:39:30

挺好,虽然是纯前端实现的,但还是有挺多人会需要的

月落秋水 发表于 2025-3-31 23:39:58

楼主能上个效果图吗?谢谢你

::Bra 发表于 2025-3-31 23:40:45

图都截好 了,结果没有上传。唉。

站帮网 发表于 2025-3-31 23:41:28

不错,挺多人需要这个代码的

可可的可 发表于 2025-3-31 23:41:38

<!--{if $_G}--><script>// 贴内显示上级板块    if(jQuery&& fid) {                jQuery(document).ready(function(){                     var fid = $_G['fid'];                        jQuery('.dingzhi_navigate > ul > li').removeClass('a');                        jQuery('.dingzhi_navigate a').closest('li').addClass('a');});      }</script><!--{/if}-->

我是第三方模板,不能直接用,稍微修改了一下,.dingzhi_navigate是主导航的样式,然后就是原版是那种动态链接的模式把,我的链接结尾是html,所以改成了,当然了,我本人不是很懂,借助了一下AI。

小冰 发表于 2025-3-31 23:41:49

你的这个代码是用了urlrewrite,发完贴第二天才想起来,我的代码不支持urlrewrite,想再发个贴,后来有人找我。就把这事给忘记了。

其实主要是匹配fid。var fid = $_G['fid'];    这一句,有没有无所谓。

ROBOT 发表于 2025-3-31 23:42:17

怎么让它在列表页也生效呢?

知行社区 发表于 2025-3-31 23:42:30

理论上这段代码在列表和主题页都好用。

如果是官方默认的模板+没用urlrewrite,我原本代码就可以。

如果用了urlrewrite,jQuery('#nv > ul > li a').parent().addClass('a');改为

jQuery('#nv > ul > li a').parent().addClass('a');

试下吧。
页: [1]
查看完整版本: 给大家一段福利代码:贴子详情页也能正确展示所属版块 New