html - jQuery淡入然后从innerHTML淡出文本不起作用
问题描述
我有一个 jQuery 函数来逐个淡入淡出文本。但是,由于我从 jQuery 放置文本,该功能无法正常工作。当我尝试运行它时,它只显示0
. 1
to4
未显示。
var html = '<div id="main">';
for (var i = 0; i < 5; i++) {
html += '<div class="trip">' + i + '<div>';
}
html += '</div>';
document.getElementById('todayPrayTime').innerHTML = html;
var $elem = $('#main .trip'),
l = $elem.length,
i = 0;
function go() {
$elem.eq(i % l).fadeIn(700, function() {
$elem.eq(i % l).fadeOut(700, go);
i++;
})
}
go()
.trip {
display: none;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="todayPrayTime"></div>
解决方案
var html = '<div id="main">';
for (var i = 0; i < 5; i++) {
html += '<div class="trip">' + i + '</div>';
}
html += '</div>';
document.getElementById('todayPrayTime').innerHTML = html;
function go($list, i) {
var l = $list.length, $trip = $list.eq(i % l);
$trip.show().fadeIn(700, function(){
$trip.fadeOut(700, function(){
$trip.hide();
if ( ++i < l ) go($list, i);
});
})
}
go($('#main .trip'), 0)
.trip {
display: none;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="todayPrayTime"></div>
var html = '<div id="main">';
for (var i = 0; i < 5; i++) {
html += '<div class="trip">' + i + '</div>';
}
html += '</div>';
document.getElementById('todayPrayTime').innerHTML = html;
function go($list, i) {
var l = $list.length, $trip = $list.eq(i);
$trip.show().fadeIn(700, function(){
$trip.fadeOut(700, function(){
$trip.hide();
go($list, (++i) % l);
});
})
}
go($('#main .trip'), 0)
.trip {
display: none;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="todayPrayTime"></div>
推荐阅读
- laravel - Livewire 分页链接缺少路线
- python - 如何打印列表中的最大数字,该列表旁边还有其他元素在同一字符串中
- android - 如何修复冻结同步 - Gradle:下载 maven-metadata.xml
- reactjs - create-react-app 后缺少依赖项
- c# - ASP.NET 每次都在加载和卸载程序集,这需要花费大量时间
- node.js - 我正在做 Oath facebook 登录,但每次 findorcreate 都会出错
- c# - EF Core - 通过复合键获取实体
- spring - 我没有收到 WebSocket 消息 (SimpMessagingTemplate)
- java - 我的应用程序在打开时崩溃,我认为这是由于 swisseph.jar
- sql - 遍历 PostgresSQL 中的一个 json 字段