亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

jquery 如何讓callback函數只運行一次?

jquery 如何讓callback函數只運行一次?

猛跑小豬 2019-02-14 15:11:39
<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()來實現?
查看完整描述

2 回答

?
肥皂起泡泡

TA貢獻1829條經驗 獲得超6個贊

$("p").hide(1000,function(){
var n=$("p").index(this);
if(n==0)
alert("The paragraph is now hidden");

});
一、在你這個場景下one()是無法達到你的要求的
二、你可以用n=?來靈活控制什么時候觸發alert

查看完整回答
反對 回復 2019-03-17
?
慕標琳琳

TA貢獻1830條經驗 獲得超9個贊

因為你有三個<p>啊,點擊的時候三個都執行了,提示一次的話:
$(document).ready(function(){
$("button").click(function(){
$("p").hide(1000);
alert("The paragraph is now hidden");
});
});

其實可以用queue方法,不過有個投機取巧的:你在三個p標簽外面套個div,比如設置id="pDiv"
然后
$("#pDiv").hide(1000,function(){
    alert("The paragraph is now hidden");
    });


查看完整回答
反對 回復 2019-03-17
  • 2 回答
  • 0 關注
  • 782 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號