0

我的网站上的 404 页面中有一个文本区域,这是从网络服务器到用户的独白。这段文字使用一个|字符来表示独白中的“光标”位置。不幸的是,这个角色不会眨眼。在谷歌搜索并找到http://en.wikipedia.org/wiki/Blink_element#Implementation之后,我尝试将其添加到页面中,但是当我将标签放在 周围时|,它显示为文字而不是被解释。

显示文本的功能是

      function type_text()
  {
    contents='';
    row=Math.max(0,index-7);
    while(row < index)
    {
      contents += tl[row++] + '\r\n';
    }
    document.forms[0].elements[0].value = contents + tl[index].substring(0,text_pos) + "<blink>|</blink>";
    if(text_pos++==str_length)
    {
      text_pos=0;
      index++;
      if(index!=tl.length)
      {
        str_length=tl[index].length;
        setTimeout("type_text()",1500);
      }
    } else
      setTimeout("type_text()",speed);
  }

这当然是在 Javascript 中。

<blink>我用它来编写标签脚本:

function blink() 
{
    var blinks = document.getElementsByTagName('blink');
    for (var i = blinks.length - 1; i >= 0; i--) 
    {
        var s = blinks[i];
        s.style.visibility = (s.style.visibility === 'visible') ? 'hidden' : 'visible';
    }
window.setTimeout(blink, 500);
 }

  if (document.addEventListener) document.addEventListener("DOMContentLoaded", blink, false);
  else if (window.addEventListener) window.addEventListener("load", blink, false);
  else if (window.attachEvent) window.attachEvent("onload", blink);
  else window.onload = blink;

如果它有帮助,我的页面可以在这里找到:http: //paradoxwow.com/404.shtml我在左下角有一个“测试”消息闪烁,但|不会闪烁。

提前谢谢。

4

2 回答 2

3

textarea 不能包含 HTML,所以你在那里不走运。既然您并没有真正使用 textarea 进行输入,为什么要使用 textarea 呢?请改用 div,并适当地修改您的代码。

于 2012-11-19T06:56:21.730 回答
0

的内容textarea只是文本,因此所有标记都被忽略(作为文本数据)。所以你可以让整个内容闪烁,但不仅仅是其中的一部分。

当您不期望用户输入时,使用 textarea 是不合逻辑且毫无意义的。您可以使用一个pre元素,其中可以识别标记,尽管原则上只允许一组有限的标签,但您可以在那里使用blink或设置样式span。或者,使用带有合适样式的pdiv,例如white-space: pre.

于 2012-11-19T06:56:46.377 回答