社区文档构建中,欢迎编辑。 社区答疑群(非官方):717421103,点点小课堂(腾讯会议):5696651544
暂时隐藏评论区
阅读
2022-09-15更新
最新编辑:Lu_23333
阅读:
更新日期:2022-09-15
最新编辑:Lu_23333
注意:
- MediaWiki:Common.css 带有缓存,约半小时生效。
- 如需临时性测试,可以参考这个Common.js,里面引用无缓存的js, css,可以用于实时测试。
一把梭方案
为全站增加CSS(如在 MediaWiki:Common.css 中)
/* 临时隐藏评论区 */ .comment-component { display: none; }
只隐藏评论输入框
/* 临时隐藏评论输入框 */ .main-reply-box { display: none; }
按条件隐藏
需要添加到如 MediaWiki:Common.js 等全局js中。
一下方案经过控制台测试,大型Wiki想要使用,请尝试用无缓存JS方案在非访问高峰期测试。
如隐藏所有以“暂时”开头的页面的评论区。
let page_name = mw.config.get('wgPageName'); if(page_name.startsWith("暂时")){ $(".comment-component").hide() }
如:所有不以“暂时”开头的页面,隐藏评论区入口。
let page_name = mw.config.get('wgPageName'); if(!page_name.startsWith("暂时")){ $(".main-reply-box").hide() }
解释
页面的HTML框架简写如下:
- .mediawiki > .game-bg > .wiki-header 页面头部(标题以上的部分)
- .mediawiki > .game-bg > #content 页面内容
- .mediawiki > .game-bg > #content > #bodyContent 正文
- .mediawiki > .game-bg > #content > .comment-component 评论区
- .mediawiki > .game-bg > #content > .comment-component > .main-reply-box 评论输入框
因此 CSS 对 .comment-component 增加 display: none 属性可以隐藏该元素。
如果无效可以尝试使用 !important,但请务必慎用 !important。
关于CSS的优先级,请参考:
- CSS 样式优先级详解 https://www.hangge.com/blog/cache/detail_2488.html
- 优先级计算器 https://specificity.keegan.st/
- 层叠与继承(理解CSS的核心理念) https://developer.mozilla.org/zh-CN/docs/Learn/CSS/Building_blocks/Cascade_and_inheritance
- 如果你还有兴趣,可以看CSS先驱的博士论文《层叠样式表》: http://johnhax.net/cssthesis/