

下記のソースコードは、 文字マウスストーカーにanimationDURATIONスタイルを設定したのですが、  
これを設定したらマウスストーカーの効果が失われてしまいました(*初期状態のみ正常に機能します)。  
どのように設定しなおせば、マウスストーカーの効果を失わずに、animationDURATIONスタイルを  
セレクトのoptionにも設定できるでしょうか。ご教示ください。

＊"文字マウスストーカー"とは、マウスポインタの動きに応じて文字列が付いて回る，技法です。

(ソースコード)

[code]

    <!DOCTYPE html>
    <html lang="ja">
    <head>
    <meta http-equiv="Content-type" content="text/html; charset=Shift_JIS">
    <meta http-equiv="Content-Script-Type" content="text/javascript">
    <meta http-equiv="Content-Style-Type" content="text/css">
    
    <title>animationDURATIONスタイルについて</title>
    
    
    <style type="text/css">
    
    #myText {
               font-style: italic;
               font-weight: bold;
               font-family: 'comic sans ms', verdana, arial;
               position: absolute;top: 0;left: 0;z-index: 3000;cursor: default;
             -webkit-animation:myText 2s ease-in-out infinite alternate; 
             -moz-animation:myText 2s ease-in-out infinite alternate; 
              animation:myText 2s ease-in-out infinite alternate; 
    } 
    @-webkit-keyframes myText{ 
          0% {opacity:0;}
        100% {opacity:1; color:gold;}
    }
    @-moz-keyframes myText{ 
          0% {opacity:0;}
        100% {opacity:1; color:gold;}
    } 
    @keyframes myText{ 
          0% {opacity:0;}
        100% {opacity:1; color:gold;}
    } 
    
    .mog1 {
               font-style: italic;
               font-weight: bold;
               font-family: 'comic sans ms', verdana, arial;
               position: absolute;top: 0;left: 0;z-index: 3000;cursor: default;
             -webkit-animation:mog1 2s ease-in-out infinite alternate; 
             -moz-animation:mog1 2s ease-in-out infinite alternate; 
              animation:mog1 2s ease-in-out infinite alternate; 
    } 
    @-webkit-keyframes mog1{ 
          0% {opacity:0;}
        100% {opacity:1; color:blue;}
    }
    @-moz-keyframes mog1{ 
          0% {opacity:0;}
        100% {opacity:1; color:blue;}
    } 
    @keyframes mog1{ 
          0% {opacity:0;}
        100% {opacity:1; color:blue;}
    } 
    .mog2 {
               font-style: italic;
               font-weight: bold;
               font-family: 'comic sans ms', verdana, arial;
               position: absolute;top: 0;left: 0;z-index: 3000;cursor: default;
             -webkit-animation:mog2 2s ease-in-out infinite alternate; 
             -moz-animation:mog2 2s ease-in-out infinite alternate; 
              animation:mog2 2s ease-in-out infinite alternate; 
    } 
    @-webkit-keyframes mog2{ 
          0% {opacity:0;}
        100% {opacity:1; color:red;}
    }
    @-moz-keyframes mog2{ 
          0% {opacity:0;}
        100% {opacity:1; color:red;}
    } 
    @keyframes mog2{ 
          0% {opacity:0;}
        100% {opacity:1; color:red;}
    } 
    
    .mog3 {
               font-style: italic;
               font-weight: bold;
               font-family: 'comic sans ms', verdana, arial;
               position: absolute;top: 0;left: 0;z-index: 3000;cursor: default;
             -webkit-animation:mog3 2s ease-in-out infinite alternate; 
             -moz-animation:mog3 2s ease-in-out infinite alternate; 
              animation:mog3 2s ease-in-out infinite alternate; 
    } 
    @-webkit-keyframes mog3{ 
          0% {opacity:0;}
        100% {opacity:1; color:olive;}
    }
    @-moz-keyframes mog3{ 
          0% {opacity:0;}
        100% {opacity:1; color:olive;}
    } 
    @keyframes mog3{ 
          0% {opacity:0;}
        100% {opacity:1; color:olive;}
    } 
    
     #myText div {position: relative;}
     #myText div div {position: absolute;top: 0;left: 0;text-align: center;}
    
    </style>
    
    <script type="text/javascript">
    <!--
    
    var txt1="<div class='mog1'>１</div><div class='mog1'>２</div><div class='mog1'>３</div><div class='mog1'>４</div>";
    var txt2="<div class='mog2'>５</div><div class='mog2'>６</div><div class='mog2'>７</div><div class='mog2'>８</div>";
    var txt3="<div class='mog3'>Ａ</div><div class='mog3'>Ｂ</div><div class='mog3'>Ｃ</div><div class='mog3'>Ｄ</div>";
    
    function anime1(){
    document.getElementById('myText').innerHTML = txt1;
    　　}
    function anime2(){
    document.getElementById('myText').innerHTML = txt2;
    　　}
    function anime3(){
    document.getElementById('myText').innerHTML = txt3;
    　　}
    
    function output(e){
     var selectedIndex = e.selectedIndex;
     document.getElementById("mess").style.background=e[selectedIndex ].style.backgroundColor;
    }
    
    
    ;(function(){
    var msg = "ＡＢＣＤ"; 
    var size = 26;
    var circleY = 0.75; var circleX = 2;
    var letter_spacing = 5;
    var diameter = 10;
    var rotation = 0.4;
    var speed = 0.3;
    
    if (!window.addEventListener && !window.attachEvent || !document.createElement) return;
    msg = msg.split('');
    var n = msg.length - 1, a = Math.round(size * diameter * 0.208333), currStep = 20,
    ymouse = a * circleY + 20, xmouse = a * circleX + 20, y = [], x = [], Y = [], X = [],
    o = document.createElement('div'), oi = document.createElement('div'),
    b = document.compatMode && document.compatMode != "BackCompat"? document.documentElement : document.body,
    
    mouse = function(e){
     e = e || window.event;
     ymouse = !isNaN(e.pageY)? e.pageY : e.clientY;
     xmouse = !isNaN(e.pageX)? e.pageX : e.clientX;
    },
    
    makecircle = function(){
     if(init.nopy){
      o.style.top = (b || document.body).scrollTop + 'px';
      o.style.left = (b || document.body).scrollLeft + 'px';
     };
     currStep -= rotation;
     for (var d, i = n; i > -1; --i){
      d = document.getElementById('iemsg' + i).style;
      d.top = Math.round(y[i] + a * Math.sin((currStep + i) / letter_spacing) * circleY - 15) + 'px';
      d.left = Math.round(x[i] + a * Math.cos((currStep + i) / letter_spacing) * circleX) + 'px';
     };
    },
    
    drag = function(){
     y[0] = Y[0] += (ymouse - Y[0]) * speed;
     x[0] = X[0] += (xmouse - 20 - X[0]) * speed;
     for (var i = n; i > 0; --i){
      y[i] = Y[i] += (y[i-1] - Y[i]) * speed;
      x[i] = X[i] += (x[i-1] - X[i]) * speed;
     };
     makecircle();
    },
    
    init = function(){ 
     if(!isNaN(window.pageYOffset)){
      ymouse += window.pageYOffset;
      xmouse += window.pageXOffset;
     } else init.nopy = true;
     for (var d, i = n; i > -1; --i){
      d = document.createElement('div'); d.id = 'iemsg' + i;
      d.style.height = d.style.width = a + 'px';
      d.appendChild(document.createTextNode(msg[i]));
      oi.appendChild(d); y[i] = x[i] = Y[i] = X[i] = 0;
     };
     o.appendChild(oi); document.body.appendChild(o);
     setInterval(drag, 25);
    },
    
    ascroll = function(){
     ymouse += window.pageYOffset;
     xmouse += window.pageXOffset;
     window.removeEventListener('scroll', ascroll, false);
    };
    
    o.id = 'myText'; o.style.fontSize = size + 'px';
    
    if (window.addEventListener){
     window.addEventListener('load', init, false);
     document.addEventListener('mouseover', mouse, false);
     document.addEventListener('mousemove', mouse, false);
      if (/Apple/.test(navigator.vendor))
       window.addEventListener('scroll', ascroll, false);
    }
    else if (window.attachEvent){
     window.attachEvent('onload', init);
     document.attachEvent('onmousemove', mouse);
    };
    })();
    // -->
    </script>
    
    </head>
    
    <body bgcolor="black">
    <form style="text-align:center;">
    　<select id="mess" style="background-color:olive; color:black; font-weight:bold;" onchange="output(this)">
    　　<option id="op1" style="background-color:blue;" value="１２３４" onclick="anime1()">１２３４</option>
    　　<option id="op2" style="background-color:red;" value="５６７８" onclick="anime2()">５６７８</option>
    　　<option id="op3" style="background-color:olive; font-weight:bold" value="ＡＢＣＤ" onclick="anime3(this)" selected>ＡＢＣＤ</option>
    　</select> 
    </form>
    
    </body>
    </html>
    
[/code]


CC BY-SA 3.0
2016-01-13T14:17:14.160
20888
2016-01-13T14:17:14.160
9359
question
javascript html css
"マウスストーカー"の効果を失わずに、セレクトのoptionにもanimationDURATIONスタイルを設定する方法