【问题标题】:How to hide syntaxhighlighter brush on page load?如何在页面加载时隐藏语法高亮笔刷?
【发布时间】:2013-12-09 14:24:55
【问题描述】:

在我的网站上,我在文章中提供了 C# 和 Visual Basic 的代码示例。默认情况下,我只希望在页面加载时显示 C# 画笔(vb 示例将设置为 display: none;

过去我通过等待所有内容加载然后隐藏 VB 示例来完成此操作:

$(document).ready(function() {
    setTimeout(function() {
        $(".vb").hide();
    }, 500);
});

但这充其量只是粗略,所以我突然想到:为什么不为这些画笔设置默认样式,以便将它们隐藏在样式表中?

不幸的是,我已经看过了,但在 syntaxhighlighter 中找不到任何我可以玩弄的画笔特定样式规则...

任何人都可以在这里提出解决方案,因为我很困惑......

这是我网站上的两个页面。 .hide() 在第 1 个有效,但在第 2 个无效..

Forms Authentication in ASP.NET
Basic CRUD in LINQ To SQL

【问题讨论】:

  • 您是否尝试过使用高度和宽度为零?它也相当于 hide().. 使用脚本根据需要更改高度和宽度..
  • 我将如何以一种比我已经使用的更好的方式实现它?似乎 .hide() 不起作用,而是超时延迟不正常
  • 我不明白。为什么样式表规则 (.vb { display: none; }) 不能完成这项工作?此外,它适用于 Chrome 中的两个页面。
  • 雷米·波特,出于某种原因,我认为这行不通……写一个答案,我会给予信任
  • 仅供参考.hide() 实际上只是设置display: none。您的超时工作不一致,因为 jQuery 未加载或 .vb 类尚未应用于元素。

标签: jquery css syntax-highlighting syntaxhighlighter


【解决方案1】:

它应该只是将它用作 css 规则

.vb { 显示:无 }

附带说明,如果文章内容没有发生变化,而您只是在翻转代码,那么将每个代码块制作成选项卡式界面可能是更好的 UX 设计。是的,这将意味着复制按钮,但它对最终用户来说更有意义,并且会更立即可用。您会注意到,如果大多数编码网站显示不止一种语言的示例,它们都会这样做。

还有一点需要注意的是:大多数用户不喜欢更改窗口框架的滚动条。大多数人发现它类似于选框和闪烁,如果您发现滚动条在您悬停/拖动时消失,这会更加令人沮丧。

【讨论】:

  • 我考虑过将它们设置为选项卡(MSDN 就是这样做的),但我想不出一个合乎逻辑的方法来让它工作......
猜你喜欢
  • 2016-07-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多