Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/381.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用jquery设置无止境循环的动画?_Javascript_Jquery_Html_Css_Marquee - Fatal编程技术网

Javascript 如何使用jquery设置无止境循环的动画?

Javascript 如何使用jquery设置无止境循环的动画?,javascript,jquery,html,css,marquee,Javascript,Jquery,Html,Css,Marquee,我一直在尝试使用jqueryanimate来运行文本。但我似乎无法让它在无休止的循环中运行。它总是只运行一次 /*js:*/ $(文档).ready(函数(){ 函数滚动(){ $('.scroll')。设置动画({ 右:$(文档).width() },8000,卷轴); } 滚动(); }); /*css:*/ .卷轴{ 位置:绝对位置; 右:-200px; 宽度:200px; } 此文本将在“”中滚动CSS备选方案: 或者,您可以使用如下代码笔中的CSS转换: 更高级: $(文档).

我一直在尝试使用jqueryanimate来运行文本。但我似乎无法让它在无休止的循环中运行。它总是只运行一次

/*js:*/
$(文档).ready(函数(){
函数滚动(){
$('.scroll')。设置动画({
右:$(文档).width()
},8000,卷轴);
}
滚动();
});
/*css:*/
.卷轴{
位置:绝对位置;
右:-200px;
宽度:200px;
}


此文本将在“”中滚动CSS备选方案:

或者,您可以使用如下代码笔中的CSS转换:

更高级:

$(文档).ready(函数(){
var scroller=$('#scroller');//scroller$(元素)
var scrollerWidth=scroller.width();//获取其宽度
var scrollerXPos=window.innerWidth;//窗口宽度的初始位置
无功转速=1.5;
css('left',scrollerXPos);//设置初始位置
函数moveLeft(){
如果(scrollerXPos那么这就是我所做的:

  • 预先计算
    $(document).width()
    就像出现水平滚动一样,宽度将在下一次迭代中更改

  • 删除您为
    滚动设置的
    宽度
    ,使宽度仅与内容一样长-并且您必须给
    空白:nowrap
    ,以使文本保持一行

  • 动画中
    使用
    $('.scroll').outerWidth()使用
    滚动
    文本的宽度

  • 请参阅下面的演示和

    $(文档).ready(函数(){
    //初始化
    var$width=$(document.width();
    var$scrollWidth=$('.scroll').outerWidth();
    $('.scroll').css({'right':-$scrollWidth+'px'});
    //生动活泼
    函数滚动(){
    $('.scroll')。设置动画({
    右:$width
    },8000,“线性”,函数(){
    $('.scroll').css({'right':-$scrollWidth+'px'});
    滚动();
    });
    }
    滚动();
    });
    正文{
    溢出:隐藏;
    }
    .卷轴{
    位置:绝对位置;
    空白:nowrap;
    }
    
    
    此文本将滚动到“!
    我想尝试使用jquery animate来制作字幕。它似乎在左侧消失了几秒钟,但在右侧重新出现……如何使它在左侧消失,并立即再次出现在右侧?是的,这就是为什么我将其称为“快速修复”的原因。您构建的函数只允许文本向左运行8秒,然后停止。您必须考虑如何使其重新运行该路径-请参阅我的编辑。我使用requestAnimationFrame(查找)做动画并控制精确位置。然后你可以检查文本的位置并重新定位它。很好,你还可以添加线性转换类型(我说
    …},8000,'linear',function(){…
    ),这样它就更像那些类型texts@lynx谢谢你指出这一点——现在看起来好多了……:)@请在这里揭晓并评论这个问题-如果有任何问题,我随时准备解决