为了账号安全,请及时绑定邮箱和手机立即绑定

新手 关于JS面向对象编写的效果的调用方式的问题?

新手 关于JS面向对象编写的效果的调用方式的问题?

跃然一笑 2018-10-19 10:09:59
第一次编写了面向对象的效果,页面有四个选项卡,在onload里这样调用发现只有最后一个好使……求帮助 我需要怎样调用这个函数啊?ps: tools.getByClass tools.$ 都写了。window.onload = function() {    var tab1 = new Tab('shop','nav','shop');    var tab2 = new Tab('map','nav','map');    var tab3 = new Tab('konw','gradient','con');    var tab4 = new Tab('listTab','gradient','sideCon');}function Tab(id,className,divid) {    this.aBtn = tools.getByClass(id,className)[0].getElementsByTagName('li');    this.aDiv = tools.$(divid).getElementsByTagName('div');    _this = this;    for (var i=0; i<this.aBtn.length; i++) {        this.aBtn[i].index = i;        this.aBtn[i].onclick = function() {            _this.tab(this);        }    }}Tab.prototype.tab =  function(oBtn) {    for(var i=0;i<this.aBtn.length;i++) {        this.aBtn[i].className = 'gradient';        this.aDiv[i].style.display ='none';    }    oBtn.className = 'active';    this.aDiv[oBtn.index].style.display = 'block';}
查看完整描述

1 回答

?
呼啦一阵风

TA贡献1802条经验 获得超6个赞

_this=this换成var _this=this试试


查看完整回答
反对 回复 2018-11-07
  • 1 回答
  • 0 关注
  • 446 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信