Javascript 部分运行的jQuery ticker磁带脚本
我正在使用一个jsnewsticker插件(),它使用Javascript 部分运行的jQuery ticker磁带脚本,javascript,jquery,Javascript,Jquery,我正在使用一个jsnewsticker插件(),它使用一次显示一个项目 如果将我的项硬编码到HTML中,则下面的代码有效。但是,如果我必须从RSS提要动态创建项(我下面的脚本就是这样做的),那么它就不起作用了 最后一个HTML页面有项,但是JS没有滚动它们。我在控制台中没有收到任何错误。不过,JS正在我的中添加ticker活动类 这可能是一个顺序问题吗?也许JS脚本是在项列表完全呈现之前启动的?如果可能的话,有没有办法检验这个理论 <script src="https://ajax.goo
一次显示一个项目
如果将我的
项硬编码到HTML中,则下面的代码有效。但是,如果我必须从RSS提要动态创建
项(我下面的脚本就是这样做的),那么它就不起作用了
最后一个HTML页面有
项,但是JS没有滚动它们。我在控制台中没有收到任何错误。不过,JS正在我的
中添加ticker活动类
这可能是一个顺序问题吗?也许JS脚本是在
项列表完全呈现之前启动的?如果可能的话,有没有办法检验这个理论
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script src="/js/jsnewsticker.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$.get('http://example.com/feed', function (data) {
var count = 0;
$(data).find("item").each(function () {
var newsfeed = $(this);
var newstitle = newsfeed.find("title").text();
var newslink = newsfeed.find("link").text();
var newslist = '';
if (count < 3) {
newslist += '<li class="newsitem">'
+ '<a href="'
+ newslink
+ '">Latest: '
+ newstitle
+ '</a>'
+ '</li>';
count++;
}
$(".latestnews").append(newslist);
});
});
$('.ticker').Ticker();
});
</script>
$(文档).ready(函数(){
$.get('http://example.com/feed,函数(数据){
var计数=0;
$(数据)。查找(“项”)。每个(函数(){
var newsfeed=$(此);
var newsttitle=newsfeed.find(“title”).text();
var newslink=newsfeed.find(“link”).text();
var newslist='';
如果(计数<3){
新闻列表+=''
+ ''
+“ ”;
计数++;
}
$(“.latestnews”).append(新闻列表);
});
});
$('.ticker').ticker();
});
从浏览器源获取的HTML:
<ul class="latestnews ticker ticker-active">
<li class="newsitem"><a href="http://example.com">Example</a></li>
<li class="newsitem"><a href="http://example.com">Example</a></li>
<li class="newsitem"><a href="http://example.com">Example</a></li>
</ul>
您之前已经回答了自己的问题。是的,您在async
Ajaxget
调用完成之前调用了ticker,因此它会根据空列表触发ticker
您需要在get
中调用它。e、 g.类似于:
<script src="/js/jsnewsticker.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$.get('http://example.com/feed', function (data) {
var count = 0;
$(data).find("item").each(function () {
var newsfeed = $(this);
var newstitle = newsfeed.find("title").text();
var newslink = newsfeed.find("link").text();
var newslist = '';
if (count < 3) {
newslist += '<li class="newsitem">'
+ '<a href="'
+ newslink
+ '">Latest: '
+ newstitle
+ '</a>'
+ '</li>';
count++;
}
$(".latestnews").append(newslist);
});
$('.ticker').Ticker();
});
});
</script>
$(文档).ready(函数(){
$.get('http://example.com/feed,函数(数据){
var计数=0;
$(数据)。查找(“项”)。每个(函数(){
var newsfeed=$(此);
var newsttitle=newsfeed.find(“title”).text();
var newslink=newsfeed.find(“link”).text();
var newslist='';
如果(计数<3){
新闻列表+=''
+ ''
+“ ”;
计数++;
}
$(“.latestnews”).append(新闻列表);
});
$('.ticker').ticker();
});
});
谢谢,我怀疑有问题,但不知道如何解决。你的解决方案奏效了,但我不确定它为什么奏效。您的解决方案在循环中调用ticker函数?然而,我的逻辑是让循环完成(从而完成构建