javascript - JS字面量如何共享变量值?
大家讲道理
大家讲道理 2017-04-10 16:40:32
[JavaScript讨论组]


如图,怎么让i共享呢,现在是每次执行i都为0.

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

全部回复(3)
伊谢尔伦

大概就是这个样子,还没有验证

var vipData = (function() {
    var _i,
        len,
        pageList;
    function prev(i) {
        if(i == 0) {
            return false;
        }
        console.log(i);
        pageList.eq(1).show.siblings().show();
        _i--;
    }
    
    function next(i) {
        if( i == len -1) {
            return false;
        }
        console.log(i);
        pageList.eq(i).show().siblings().show();
        _i++;
    }
    function init() {
        var self = this,
            _i = 0;
        body.bind('swipUp', function() {
            self.nextPage(_i);
        });
        body.bind('swipDown', function() {
            self.prevPage(_i);
        });
    }
    init();
    return {
        prevPage : prev,
        nextpage: next,
        init: init
    }
})();
怪我咯

目前你在init 里面定义的i是个局部变量,外部访问不到,可否将它定义为vipdata 的一个属性,这样对于其他几个函数就是公开的了,不知道对不对,没有测试

迷茫

给vipData对象新增一个属性来存储当前序列

var vipData = {
    index: 0,
    prev: function(){ this.index-- },
    next: function(){ this.index++ },
    init: function(){ 
        var self = this
        body.bind('swipUp', function() {
            self.nextPage()
        });
        body.bind('swipDown', function() {
            self.prevPage()
        });
    }
}
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

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