[問題] 如何防止使用者亂點?
我做了一個選單
點了之後會有背景淡入淡出
同時也淡入一個視窗框,內容用load來的
load後再用if else來判斷是否此頁需要用after加入其他tag
但若使用者亂點,動畫就會亂跑
目前解法是在動畫前先加個stop。 #obj.stop().fadeIn();
不知這種方法是否正確。
但load+after我就解不開了
譬如 load(123.html) --> <div>123</div>
after('<img />') --> <div>123</div><img />
但若亂點,就會有重複after的問題 --> <div>123</div><img /><img />
這該怎麼避免?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 111.252.123.131
推
03/25 10:57, , 1F
03/25 10:57, 1F
→
03/25 10:57, , 2F
03/25 10:57, 2F
不好意思,我能力不太夠,看不懂。 可以寫個範例嗎?
我目前大概是這樣:
$("#menu").click({
var idx = $(this).index();
$("#info").load("view/"+idx+".html,function({
if( idx == 6 ){
$("#info").after("<img />");
}
}));
})
亂點的話會變得像這樣:
<section id="info">
<div>This is load html</div>
<img />
<img /> <--亂點多出來的tag
</sectino>
※ 編輯: Qiqi 來自: 114.41.106.23 (03/26 19:40)
推
03/26 20:07, , 3F
03/26 20:07, 3F
→
03/26 20:08, , 4F
03/26 20:08, 4F
var clicked = false;
$("#menu").click({
clicked = true;
var idx = $(this).index();
$("#info").load("view/"+idx+".html,function({
if( idx == 6 && clicked == true ){
$("#info").after("<img />");
clicked = false;
}
}));
})
類似這樣嗎?
※ 編輯: Qiqi 來自: 114.41.106.23 (03/26 20:17)
推
03/26 20:33, , 5F
03/26 20:33, 5F
→
03/26 20:34, , 6F
03/26 20:34, 6F
→
03/26 20:34, , 7F
03/26 20:34, 7F
→
03/26 20:35, , 8F
03/26 20:35, 8F
再修一次,把clicked改flag好了,不然會把click跟clicked搞混
var flag = true;
$("#menu").click({
if(flag){
flag = false;
var idx = $(this).index();
$("#info").load("view/"+idx+".html,function({
if( idx == 6){
$("#info").after("<img />");
}
}));
flag = true;
}
})
第一步先if(flag) 是因為if以外就算只有 a=1 ,被亂點還是會去跑
雖然不影響程式的結果,但會吃資源,是嗎?
※ 編輯: Qiqi 來自: 114.41.105.162 (03/26 21:50)
推
03/26 21:58, , 9F
03/26 21:58, 9F
→
03/26 21:58, , 10F
03/26 21:58, 10F
→
03/27 19:32, , 11F
03/27 19:32, 11F
Ajax 近期熱門文章
PTT數位生活區 即時熱門文章