Javascript Prototype pub子方法超出作用域
Javascript Prototype pub sub method out of scope
在构造函数中,我订阅了另一个类函数。如何从订阅中调用类方法show
var MemPortfolio = MemPortfolio || {};
MemPortfolio.Portfolio = function (contentid, thumbclass, featuredid) {
this.thumbClass = thumbclass;
this.featuredId = "#" + featuredid;
var that = this;
//subscribe to menutile click
$.subscribe("/menutile/click/portfolio", function (tilename) {
that.Show();
});
};
MemPortfolio.Portfolio.prototype.Show = function () {
alert("show");
}
在我的文档准备好了://////
$(document).ready(function () {
//check exists?
var tilemenu = new MemTileMenu.Menu("menu", "menuitem", "contentarea");
var portfolio = new MemPortfolio.Portfolio("contentarea", "thumb", "");
});
I got this working -
/// <reference path="jquery-1.7.1.js" />
/// <reference path="jquery.ba-tinypubsub.js" />
var MemPortfolio = MemPortfolio || {};
MemPortfolio.Portfolio = function (contentid, thumbclass, featuredid) {
this.thumbClass = thumbclass;
this.featuredId = "#" + featuredid;
};
MemPortfolio.Portfolio.prototype = {
show: function () {
alert("show");
},
subscribe: function () {
var that = this;
$.subscribe("/menutile/click/portfolio", function (tilename) {
that.show();
});
}
医生。准备好了:
/// <reference path="tilemenu.js" />
/// <reference path="portfolio.js" />
$(document).ready(function () {
//check exists?
var tilemenu = new MemTileMenu.Menu("menu", "menuitem", "contentarea");
var portfolio = new MemPortfolio.Portfolio("contentarea", "thumb", "");
portfolio.subscribe();
});
}
谢谢。NerdPerson
尝试将MemPortfolio.Portfolio.prototype
替换为MemPortfolio.prototype.Portfolio
可以。
/// <reference path="jquery-1.7.1.js" />
/// <reference path="jquery.ba-tinypubsub.js" />
var MemPortfolio = MemPortfolio || {};
MemPortfolio.Portfolio = function (contentid, thumbclass, featuredid) {
this.thumbClass = thumbclass;
this.featuredId = "#" + featuredid;
};
MemPortfolio.Portfolio.prototype = {
show: function () {
alert("show");
},
subscribe: function () {
var that = this;
$.subscribe("/menutile/click/portfolio", function (tilename) {
that.show();
});
}
Doc.Ready here:
/// <reference path="tilemenu.js" />
/// <reference path="portfolio.js" />
$(document).ready(function () {
//check exists?
var tilemenu = new MemTileMenu.Menu("menu", "menuitem", "contentarea");
var portfolio = new MemPortfolio.Portfolio("contentarea", "thumb", "");
portfolio.subscribe();
});
}
相关文章:
- 在put方法之前从作用域获取数据
- Visual Studio展开方法和所有子作用域或仅折叠方法
- 为什么't我的角度控制器'在其某个方法内的作用域中的依赖项
- 直接在DOM事件处理程序中调用作用域函数的最短方法是什么
- 将子作用域var与父作用域var同步
- 尝试将变量传递到对象中时的作用域问题'的方法构造函数
- 作用域变量未从状态父控制器继承到子控制器
- 在对象类上实现 jquery 作用域的最佳方法
- AngularJS ui路由器:访问子作用域变量
- 如何基于父控件的作用域生成子控制器
- 从多个控制器上的指令访问作用域的正确方法
- AngularJS:如何从子指令访问父控制器的作用域项
- 主干——DOM元素更有效的作用域查找方法是什么?
- AngularJs指令:在模板中从父作用域调用方法
- AngularJS从指令中的祖先作用域调用方法
- Javascript oop未定义值:用于添加作用域的方法
- Javascript Prototype pub子方法超出作用域
- 在Node.js中处理变量作用域的方法
- 在子作用域中调用回调的最佳方法是什么
- Javascript闭包:动态定义函数,从当前作用域调用方法