我知道我做错了什么,但我真的不明白为什么:
var ds= ds || {};
ds.Buynow = function ($parameters) {
var parameters = {
server_url: null,
redirect_url: null
};
//buynow
var addBuynowButtonsHandler = function () {
[..stuff..]
};
var init = function () {
$.extend(parameters, $parameters);
addBuynowButtonsHandler();
};
init();
};
ds.Raffle = function ($parameters) {
var parameters = {
server_url: null,
redirect_url: null,
info_url: null
};
//ruffle
var addRaffleButtonsHandler = function () {
[...stuff...]
};
var init = function () {
$.extend(parameters, $parameters);
addRaffleButtonsHandler();
};
init();
};
现在打电话:
new ds.Raffle({...]);
没有错误,一切正常。而是致电:
<script type="text/javascript">
$(document).ready(function () {
new ds.Buynow({
[..]
});
});
</script>
给出错误TypeError: ds.Buynow is not a constructor
我还检查了其他地方,看到这个错误可能是由于在其他地方定义的ds.Buynow对象引起的,但我在新声明之前尝试了console.log(ds.Buynow)
,它给了我undefined
。此外,将名称更改为Buynow不会影响错误。有人可以赐教我吗?