user7892745 对我不起作用,需要一些小调整
1° "pos" 不明白 wot 应该是什么,但控制台日志说 "undefined" 所以我删除了 " , pos"
2°“myReuseableStylesheet.insertRule”给我错误“不是函数”所以我使用“innerHTML”插入“insertRule”
3° 最后我移动了“document.head.appendChild(myReuseableStylesheet);” 在最后
但在此之后它工作正常,这正是我想要的。非常感谢 user7892745 :D
也许我遇到的问题,来自我使用它的方式
这是我使用的脚本
var getclass = document.getElementsByClassName("cls");
var countclass = getclass.length;
for (var i=0; i <countclass; i++ ){
getclass[i].addEventListener('mouseover', function(){
// get the data-name value to show element whose id are the same
var x= this.getAttribute("data-name");
var y =document.getElementById(x);
y.style.display="block";
// because the element to show have fixed width, but different text length, they have different height
// so I need to get the highness, then use the value of height to define the 100% value of animation
// or the longer ones will be cutted an the shorten have a lot of empty space a the end
var yHeig= Math.round(parseInt(getComputedStyle(y).getPropertyValue('height')));
yHeig_ = yHeig - 10; // to shorten a bit the time from end and new passage
console.log(yHeig+" - "+ yHeig_);
addKeyFrames(
'showMe',
'0%{top:35px;}' +
'100%{top:-'+ yHeig_ +'px;}'
);
y.style.animation="showMe 7s linear infinite";
},false);
getclass[i].addEventListener('mouseout', function(){
var x= this.getAttribute("data-name");
document.getElementById(x).style.display="none";
},false);
}
我知道 html marquee cuold 似乎很容易做同样的事情,但效果不佳,