jquery 如何让callback函数只运行一次

<html>
<head>
<script type="text/javascript" src="/jquery/jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("button").click(function(){
$("p").hide(1000,function(){
alert("The paragraph is now hidden");
});
});
});
</script>
</head>
<body>
<button type="button">Hide</button>
<p>This is a paragraph with little content.</p>
<p>This is a paragraph with little content.</p>
<p>This is a paragraph with little content.</p>
</body>
</html>

callback函数alert()一共提示了三次,我想让它只提示一次,需要如何修改代码?
有没有可能通过one()来实现?

拉莫斯之舞
浏览 615回答 2
2回答

慕姐4208626

$("p").hide(1000,function(){var n=$("p").index(this);if(n==0)alert("The paragraph is now hidden");});一、在你这个场景下one()是无法达到你的要求的二、你可以用n=?来灵活控制什么时候触发alert

蛊毒传说

因为你有三个<p>啊,点击的时候三个都执行了,提示一次的话:$(document).ready(function(){$("button").click(function(){$("p").hide(1000);alert("The paragraph is now hidden");});});
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JQuery