gpt4 book ai didi

javascript - div滚动的无限循环

转载 作者:太空宇宙 更新时间:2023-11-03 18:15:33 25 4
gpt4 key购买 nike

我正在尝试在 http://www.hubspot.com/ 上实现推文滚动条 |

enter image description here

我猜这是使用来自 http://code.divshot.com/tweetscroller/ 的 tweet-scroller

但由于演示无法正常运行,此链接已断开。

我在寻找替代方案。

我找到了 http://jsfiddle.net/doktormolle/4c5tt/

HTML:

<ul class="slide">
<li><img src="http://www.google.com/logos/2010/canadianthanksgiving2010-hp.jpg"/></li>
<li><img src="http://www.google.com/logos/2010/germany10-hp.gif"/></li>
<li><img src="http://www.google.com/logos/stpatricks_02.gif"/></li>
</ul>

CSS:

 ul.slide{margin:0;
padding:0;
height:80px;
list-style-type:none;}
ul.slide li{float:left;
list-style-type:none;}
ul.slide img{border:1px solid silver;
height:80px;}

JS:

 //Plugin start
(function ($) {
var methods = {
init: function (options) {
return this.each(function () {
var _this = $(this);
_this.data('marquee', options);
var _li = $('>li', _this);

_this.wrap('<div class="slide_container"></div>')
.height(_this.height())
.hover(function () {
if ($(this).data('marquee').stop) {
$(this).stop(true, false);
}
},
function () {
if ($(this).data('marquee').stop) {
$(this).marquee('slide');
}
})
.parent()
.css({
position: 'relative',
overflow: 'hidden',
'height': $('>li', _this).height()
})
.find('>ul')
.css({
width: screen.width * 2,
position: 'absolute'
});

for (var i = 0; i < Math.ceil((screen.width * 3) / _this.width()); ++i) {
_this.append(_li.clone());
}

_this.marquee('slide');
});
},

slide: function () {
var $this = this;
$this.animate({
'left': $('>li', $this).width() * -1
},
$this.data('marquee').duration,
'swing',
function () {
$this.css('left', 0).append($('>li:first', $this));
$this.delay($this.data('marquee').delay).marquee('slide');

}
);

}
};

$.fn.marquee = function (m) {
var settings = {
'delay': 2000,
'duration': 900,
'stop': true
};

if (typeof m === 'object' || !m) {
if (m) {
$.extend(settings, m);
}

return methods.init.apply(this, [settings]);
} else {
return methods[m].apply(this);
}
};
})(jQuery);

//Plugin end

//call
$(document).ready(
function () {
$('.slide').marquee({
delay: 3000
});
}
);

我做了一点修改就可以正常工作了

http://jsfiddle.net/3pZwR/1/

唯一的问题是它在滚动每个 div 后停止。

我希望它是无限滚动的效果而不会停止。就像在 hubspot 上一样。

最佳答案

您应该使用另一种 JQuery Easing 方法而不是“swing”。查看 JQuery 网站上的 Easings:http://api.jqueryui.com/easings/

关于javascript - div滚动的无限循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22906604/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com