javascript - 如何控制执行click()一次,停止
迷茫
迷茫 2017-04-11 09:59:48
[JavaScript讨论组]

莫怪,不知怎么组织语言
控制执行两次后停止

执行完成后 再自动执行click()一次,停止

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

全部回复(5)
阿神
var count = 0;

while(count < 2){
    query();
    count++;
}

function query(){

}
黄舟
var i = 0;
function query(){
    i = i + 1;
    if(i === 2){
        query = function(){};
    }
}
阿神

建议将代码直接贴出来,这样修改也方便很多,截图略麻烦

你的问题只需要在vipQuery函数里多加一个参数判断一下就行了,具体看代码中注释的解释

function vipQuery (url, i, boolean) {

    // 请求数据
    $.get(url, {
        timeout: 8000
    })
    // 请求成功
    .done(function () {})
    // 请求失败
    .fail(function (xhr, status) {
        // 如果boolean参数为false,则终止执行
        if(!boolean) {
            return false;
        }
        if (status == 'timeout' || status == 'error') {
            vipQuery(url, i, false);
        } else {
            console.log(status);
        }
    })

    // ... 其他逻辑处理
}

首次调用时,最后一个参数用true,第二次调用时,参数传false,这样就只会执行2次,不会无限执行了

vipQuery(url, i, true);
ringa_lee

楼上几位说的都可

PHP中文网

解决方案楼上已经很清晰了,补个建议~可以把标记定义在这个元素的属性里,这就比较安全了,不会造成全局变量污染。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号