由于用户的网络环境等各种原因,防止按钮重复点击,表单重复提交等都是减少bug发生,降低服务器压力等相当有效的方法。下面来聊聊通过模拟我们在操作系统里类似加锁的思想来防止重复点击。
目录
思路
- 声明一个锁(布尔值),用来标识按钮,变量是否被锁上
- 当按钮按下后,把布尔值设置为false,即标记为已锁上
- 设置一个延时函数setTimeout(),等待一段时间后再把这个锁归还,设置布尔值为true
- 显然我们的按钮点击事件一开始就应该判断锁是否被锁上,是则直接结束。否则才能正常执行
示例
- HTML / JS
<div style="width:100%;display:flex;justify-content: center;background:#66ccff;border-radius:10px;border 1px solid #66ccff;">
<button onclick="btn_click()" style="border-radius:10px;">
点死我
</button>
</div>
<script>
//锁变量
let lock = true;
//按钮点击执行函数
function btn_click() {
if(lock == false) {
return;
}
//加锁
lock = false;
//执行按钮点击本应执行的事情
alert("点了一下我捏");
//限制间隔5000毫秒(即5秒)只能执行一次
setTimeout(function(){
//解锁
lock = true;
},5000);
}
</script>
- 效果(每隔5秒只会执行一次按钮点击应该执行的事情):
结语
- 本文的例子思路和实现都是相当简单的,但确是很实用的方法。
- 另外,从这个思路出发,还能解决一些类似的问题,比如:
- 音乐进度条的拖动。由于拖动的报告率太高,导致拖动过程界面卡顿,音乐的播放也很卡顿,那就可以用这个思路,每一段时间内只对应响应一次。
- 降低输入框的响应。
- 后续我们再聊聊上面这些例子的解决方法实现。他们本质都是这个模拟加锁的思路,但可能有些需要一些细节上不同的处理。
buy azithromycin in usa
cialis 10mg tablets
Приветствуем вас, друзья!
Мы представляем агентство СЕО продвижения XRumer Art.
Ваш портал, как мы заметили, еще только начинает набирать обороты. Чтобы ускорить его рост, можем предложить наши услуги по SEO-оптимизации. Также у нас имеются недорогие и эффективные инструменты для СЕО-специалистов. У нас большой опыт, в арсенале присутствуют успешные рабочие кейсы – покажем по запросу.
До конца месяца действует скидка на самые востребованные услуги – 10%.
Среди наших предложений следующее:
– Трастовые ссылки (требуется любому сайту) – стоимость от 1,5 до 5000 р
– Трастовые безанкорные ссылки (2500 штук) (полезно для любых сайтов) – 3900 рублей
– Качественный прогон по 110 000 сайтам в RU.зоне (максимально полезно для сайта) – 2.900 р
– 150 постов Вконтакте о вашем сайте (недорогая реклама) – 3.900 рублей
– Статьи о вашем сайте на 300 форумах (очень мощная раскрутка онлайн-сайта) – 29.000 рублей
– СуперПостинг – это прогон на 3 миллиона ресурсов (мощнейшее размещение для ваших сайтов) – 39900 руб
– Рассылка рекламных сообщений по сайтам при помощи обратной связи – договорная стоимость, будет зависеть от объемов.
Если появились вопросы, всегда обращайтесь, подскажем.
Telgrm: @exrumer
https://XRumer.cc/
Skype: Loves.Ltd
http://indiaph24.store/# reputable indian online pharmacy
metformin 125 mg
Online medicine home delivery indian pharmacy best india pharmacy
azithromycin 500 tablet price
best online pharmacies in mexico cheapest mexico drugs mexico drug stores pharmacies
http://canadaph24.pro/# reliable canadian pharmacy reviews
zestril 10
http://canadaph24.pro/# canadian drug pharmacy
valtrex price singapore
canadian prescription pharmacy
online pharmacy denmark
https://mexicoph24.life/# mexican mail order pharmacies
pharmacies in canada that ship to the us canada pharmacy online vipps approved canadian online pharmacy
mexican pharmacy
metformin 500 mg over the counter
cialis generic soft tabs
http://mexicoph24.life/# mexico drug stores pharmacies
metformin xr 500mg
azithromycin 200mg price
lisinopril generic price comparison
canadian pharmacy review my canadian pharmacy legit canadian pharmacy
mexican pharmacy mexico pharmacy reputable mexican pharmacies online
zestoretic 20 25mg
price of synthroid
https://indiaph24.store/# best india pharmacy
http://mexicoph24.life/# mexican online pharmacies prescription drugs
canada drugstore pharmacy rx
indian pharmacy online best online pharmacy india world pharmacy india
PBN sites
We shall create a structure of PBN sites!
Pros of our private blog network:
We carry out everything SO THAT GOOGLE does not realize THAT this A private blog network!!!
1- We obtain domain names from different registrars
2- The leading site is hosted on a VPS server (VPS is high-speed hosting)
3- The rest of the sites are on distinct hostings
4- We allocate a unique Google profile to each site with verification in Google Search Console.
5- We develop websites on WordPress, we do not use plugins with assisted by which Trojans penetrate and through which pages on your websites are generated.
6- We refrain from repeat templates and utilize only distinct text and pictures
We refrain from work with website design; the client, if desired, can then edit the websites to suit his wishes
mexico drug stores pharmacies mexico pharmacy buying prescription drugs in mexico
prandin us – order prandin 2mg generic pill empagliflozin 25mg
https://mexicoph24.life/# mexican online pharmacies prescription drugs
https://indiaph24.store/# top 10 online pharmacy in india
cheap tadalafil 60 mg
mexico pharmacy Mexican Pharmacy Online best online pharmacies in mexico
buy medicines online in india Cheapest online pharmacy indian pharmacy
zestril 10 mg price in india
http://mexicoph24.life/# mexican border pharmacies shipping to usa
https://indiaph24.store/# indian pharmacy online
mexican mail order pharmacies mexican pharmacy medication from mexico pharmacy
http://indiaph24.store/# online shopping pharmacy india
canadian pharmacies comparison canadian pharmacies canadianpharmacyworld com
valtrex valacyclovir
best online pharmacy india: Cheapest online pharmacy – Online medicine home delivery
zetia pricing
reputable mexican pharmacies online cheapest mexico drugs п»їbest mexican online pharmacies
http://canadaph24.pro/# canada pharmacy online