【问题标题】:Making a DOS-style window in ASP.net在 ASP.net 中制作 DOS 样式的窗口
【发布时间】:2011-03-24 09:34:23
【问题描述】:

我正在尝试在我的网站上模拟 MS-DOS 命令提示符。我不需要接受击键,但我想在底部附加数据并可选择向上滚动。

一开始我看的是asp:TextBox和asp:Label,但是使用postbacks的闪烁好像太多了。我现在正在考虑 DIV 标记和 Javascript,我只是在其中更新 InnerHTML 属性,但我也得到了闪烁,并且在滚动时遇到了问题。

在这种情况下,您会推荐什么解决方案?本质上,我试图数到无穷大,延迟 1 秒,只需要最新的 300 个左右的条目,最新的条目位于屏幕底部。

JS/CSS 也能做到这一点吗?

【问题讨论】:

  • 你在做什么/为什么要回发?
  • @lincolnk 只是在尝试回发。我想要一种复古的感觉,但不确定我想要多“复古”;)

标签: javascript asp.net css


【解决方案1】:

你想让它更有风格吗? :)

看到这个页面... http://www.klaus.dk/Some_unknown_page
或者这个 http://www.harryovers.com/404.html?aspxerrorpath=/Account/LoginPartial

这里是javascript源代码。

http://code.google.com/p/c64-404-page/

稍作改动,您可以在此代码上附加您的文字:)

【讨论】:

    【解决方案2】:

    我认为“DOS 风格的窗口”有点误导,考虑到您想要做的只是将文本附加到 div 并确保它保持滚动到底部。

    function addLine(text) {
    
      var box = document.getElementById('DOSBox') //teehee
    
      var line = document.createElement('p');
      line.innerHTML = text;
    
      box.appendChild(line);
    
      box.scrollTop = box.scrollHeight;
    
    }
    

    这样设置样式

    #DOSBox {
      overflow: auto;
      display: block;
      height: 400px; width: 500px; /* or whatever */
    
      /* and if you want it to look DOS-like */
      background: #000;
      color: rgb(192, 192, 192);
      font-family: fixedsys;
    }
    
    #DOSBox p {
      margin: 0;
    }
    

    【讨论】:

      【解决方案3】:

      我刚刚使用 jQuery 构建了一些非常相似的东西。您可以使用append method 将内容添加到 DIV 的底部。然后,您可以设置 scrollTop 属性以保持滚动到底部,如下所示:

      $("#someDiv").attr({ scrollTop: $("#someDiv").attr("scrollHeight") });
      

      【讨论】:

      • 我需要学习scrollTop,谢谢。既然我数到无穷大,我将如何切断很久以前附加的数据?否则我会冒着让客户超负荷的风险。
      • 你的数据来源是什么?
      • ...如果我要更进一步,知道如何创建一个闪烁的光标吗?也许是第二个单行Div,然后使用计时器以设定的频率更改文本?
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多