javascript - javascipt jquery中的简单递归函数不起作用
问题描述
HTML
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
</head>
<body>
<script>
var i=100;
$(document).ready(function(){
function blink(i) {
if(i==0)
return;
$(".target h1").fadeToggle(1000);
i=i-1;
blink(i);
}
});
</script>
<div class="target"><h1>I am blinking.</h1></div>
</body>
</html>
当我使用 for 循环时,它工作得很好,但不知道为什么它在递归函数中没有按预期运行。
解决方案
它不会运行,因为您从不调用该函数,您仅在 DOM 准备好后才创建该函数。
const i = 3;
function blink(i) {
if(i==0)
return;
$(".target h1").fadeToggle(1000);
blink(i-1);
}
$(document).ready(function() {
blink(i)
});
<html>
<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
</head>
<body>
<div class="target"><h1>I am blinking.</h1></div>
</body>
</html>
推荐阅读
- r - 从 markdown 到 Word 的表格看起来没有格式化
- jupyter-notebook - jupyter nbconvert 命令运行良好,而“下载为”菜单命令导致错误“在 PATH 上找不到 xelatex”
- c++ - Trie数据结构的实现
- python - 对具有不确定性的两个数据点进行线性拟合的置信区间
- sql - NTILE SQL 存储桶只有 4 个匹配而不是 2
- azure - 创建生成管道后生成错误 - Azure Devops
- c++ - 将类实例添加到 C++ 中的对象层次结构中的问题
- javascript - 如何使用 API Javascript 获得 google play 应用率
- python - 训练 tensorflow 时计算机死机和崩溃
- python - 删除 Django 项目中 requirements.txt 中的冗余