Javascript 如何使最后一个字母闪烁?

Javascript 如何使最后一个字母闪烁?,javascript,html,css,Javascript,Html,Css,这是我自己打字时使用的代码,我想让最后一个字母闪烁,我该如何在这里实现这一点 我试着用定时器让字母闪烁,但这不是一个很好的解决方案 这是它看起来的样子:,我想实现一个类似cmd的效果 <div style="color:#c0c0c0;font-size:72px;font-family:Windows Command Prompt;font-weight:normal;font-style:normal;text-align:left;text-decoration:none;" id=

这是我自己打字时使用的代码,我想让最后一个字母闪烁,我该如何在这里实现这一点

我试着用定时器让字母闪烁,但这不是一个很好的解决方案

这是它看起来的样子:,我想实现一个类似cmd的效果

<div style="color:#c0c0c0;font-size:72px;font-family:Windows Command Prompt;font-weight:normal;font-style:normal;text-align:left;text-decoration:none;" id="text_scroller"></div>
<script type="text/javascript">
var messages = new Array
(
   'Click here to begin_'
);
var speed = 150;
var currentMsg = 0;
function doScroller(text, pos, direction)
{
   var text_scroller = document.getElementById('text_scroller');
   text_scroller.innerText = '//' + text.substring(0, pos) + '';

   pos += direction;
      if (pos > text.length)
   {
      text = ' '
   }
      else
   {
     if (pos < 0)
     {
        currentMsg++;
        if(currentMsg >= messages.length)
          currentMsg = 0;
        text = messages[currentMsg];
        direction = -direction;
     }
     setTimeout('doScroller("'+text+'",'+pos+','+direction+')', speed);
   }
}
doScroller(messages[0], 0, 1);
</script>

var messages=新数组
(
'单击此处开始u2;'
);
无功转速=150;
var currentMsg=0;
功能doScroller(文本、位置、方向)
{
var text_scroller=document.getElementById('text_scroller');
text_scroller.innerText='/'+text.substring(0,pos)+'';
pos+=方向;
如果(位置>文本长度)
{
文本=“”
}
其他的
{
如果(位置<0)
{
currentMsg++;
如果(currentMsg>=messages.length)
currentMsg=0;
text=消息[currentMsg];
方向=-方向;
}
setTimeout('doScroller(“+text+”,“+pos+”,“+direction+”),速度);
}
}
Doscorler(消息[0],0,1);

如果您希望
\u
闪烁,那么这可以通过纯CSS实现

。闪烁:在{
内容:"";
显示:内联块;
动画:闪烁1s无限;
字体大小:粗体;
}
@关键帧闪烁{
0% {
不透明度:0;
}
100% {
不透明度:1;
}
}

你好
使用普通css:

.writer:之后{
内容:"";
动画:闪烁1s无限;
}
@关键帧闪烁{
0%{不透明度:1;}
1%{不透明度:0;}
50%{不透明度:0;}
51%{不透明度:1;}
}
测试

var messages=新数组
(
'单击此处开始u2;'
);
无功转速=150;
var currentMsg=0;
功能doScroller(文本、位置、方向)
{
var text_scroller=document.getElementById('text_scroller');
text_scroller.innerText='/'+text.substring(0,pos)+'';
pos+=方向;
如果(位置==20)
{
方向=-方向;
}
如果(位置==19)
{
方向=1;
速度=500;
}
setTimeout('doScroller(“+text+”,“+pos+”,“+direction+”),速度);
}
Doscorler(消息[0],0,1);

这就是我想做的。我不知道足够的javascript,所以我不知道我是否按逻辑编写了它,但它确实适用于我的目的。

你想让
下划线
闪烁,还是想让任何字符最终闪烁?像Hello中的
o
或者应该是Hello\u我希望下划线闪烁。检查是否可以-如果可能,我必须避免使用不推荐的浏览器功能:D。这应该可以,但其他所有解决方案也可以。你不应该用纯JS来做这件事。可以用纯javascript来做吗?
<div style="color:#c0c0c0;font-size:72px;font-family:Windows Command Prompt;font-weight:normal;font-style:normal;text-align:left;text-decoration:none;" id="text_scroller"></div>
<script type="text/javascript">

var messages = new Array
(
   'Click here to begin_'
);
var speed = 150;
var currentMsg = 0;

function doScroller(text, pos, direction)

{
   var text_scroller = document.getElementById('text_scroller');
   text_scroller.innerText = '//' + text.substring(0, pos) + '';

   pos += direction;

   if (pos == 20)
   {
      direction = -direction;
   }

   if (pos == 19)
   {
      direction = 1;
      speed = 500;
   }



     setTimeout('doScroller("'+text+'",'+pos+','+direction+')', speed);
}
doScroller(messages[0], 0, 1);
</script>