从另一个方法调用javascript类方法
我在Javascript类中从另一个方法调用一个方法时遇到问题 这是密码从另一个方法调用javascript类方法,javascript,jquery,Javascript,Jquery,我在Javascript类中从另一个方法调用一个方法时遇到问题 这是密码 函数微调器(最大值、最小值、div\u id){ var最大值=25; var最小值=-25; var默认值=0; this.maxValue=最大值; this.minValue=最小值; this.divId=div\u id; this.spinnerControl;//在getSpinner()方法中填充的spinner控件对象。 this.rotateSpinner=函数(spinnerTextBoxId,向上)
函数微调器(最大值、最小值、div\u id){
var最大值=25;
var最小值=-25;
var默认值=0;
this.maxValue=最大值;
this.minValue=最小值;
this.divId=div\u id;
this.spinnerControl;//在getSpinner()方法中填充的spinner控件对象。
this.rotateSpinner=函数(spinnerTextBoxId,向上){
document.getElementById(spinnerTextBoxId).value=up?parseInt(document
.getElementById(spinnerTextBoxId).value)+1:parseInt(文档
.getElementById(spinnerTextBoxId).value)-1;
};
this.getSpinner=函数(){
喷丝头控制=$('')
.attr('id','spinner')
.attr('val',默认值)
。添加($(“
”)
.addClass(“微调器”)
.附加(
$(“”)
.append($('')
艾特先生({
id:'向上按钮',
值:'▲;'
}).appendTo($(''))
)
).append($(“”)
.append($('')
艾特先生({
id:'下拉按钮',
值:'▼;'
}).appendTo($(''))
)
)
);
var timeoutId=0;
$(“#向上按钮”,喷丝头控件).mousedown(函数(){
log(“鼠标按下”);
timeoutId=setInterval(this.rotateSpinner('spinner',true),200);
}).bind('mouseup mouseleave',function(){
log(“鼠标左键”);
//clearTimeout(timeoutId);
});
//$(“#downButton”).mousedown(函数(){
//警惕(‘此处’);
////timeoutId=setInterval(“rotateSpinner('spinner',false)”,200;
//}).bind('mouseup mouseleave',function(){
//clearTimeout(timeoutId);
// });
返回喷丝头控制;
};
//班尾
}
在这个js文件中,错误出现在firebug中:“Reference error:rotateSpinner”未定义
为什么会出现它?
这是指DOM元素,在本例中是“#upButton”。如果您添加了一个指向类的变量,那么在方法中定义函数时可以引用这个变量,而不是this
function Spinner( max_value , min_value , div_id ){
var MAX_VALUE = 25;
var MIN_VALUE = -25;
var DEFAULT_VALUE = 0;
this.maxValue = max_value;
this.minValue = min_value;
this.divId = div_id;
this.spinnerControl; //spinner control object that is populated in getSpinner() method.
this.rotateSpinner = function (spinnerTextBoxId,up) {
document.getElementById(spinnerTextBoxId).value = up ? parseInt(document
.getElementById(spinnerTextBoxId).value) + 1 : parseInt(document
.getElementById(spinnerTextBoxId).value) - 1;
};
this.getSpinner = function( ){
var self = this;
spinnerControl = $('<input type="text"></input>')
.attr('id' , 'spinner')
.attr('val' , DEFAULT_VALUE)
.add( $('<ul></ul>')
.addClass("spinner")
.append(
$('<li></li>')
.append($('<input type="button"></input>')
.attr({
id : 'upButton',
value : '▲'
}).appendTo( $('<li></li>') )
)
).append( $('<li></li>')
.append($('<input type="button"></input>')
.attr({
id : 'downButton',
value : '▼'
}).appendTo( $('<li></li>') )
)
)
);
var timeoutId = 0;
$('#upButton' , spinnerControl).mousedown(function() {
console.log('mouse down');
timeoutId = setInterval(self.rotateSpinner('spinner' , true ) , 200);
}).bind('mouseup mouseleave', function() {
console.log('mouse left');
//clearTimeout(timeoutId);
});
// $('#downButton').mousedown(function() {
// alert('herer');
// //timeoutId = setInterval("rotateSpinner('spinner' , false ) ", 200);
// }).bind('mouseup mouseleave', function() {
// clearTimeout(timeoutId);
// });
return spinnerControl;
};
//class END
}
函数微调器(最大值、最小值、div\u id){
var最大值=25;
var最小值=-25;
var默认值=0;
this.maxValue=最大值;
this.minValue=最小值;
this.divId=div\u id;
this.spinnerControl;//在getSpinner()方法中填充的spinner控件对象。
this.rotateSpinner=函数(spinnerTextBoxId,向上){
document.getElementById(spinnerTextBoxId).value=up?parseInt(document
.getElementById(spinnerTextBoxId).value)+1:parseInt(文档
.getElementById(spinnerTextBoxId).value)-1;
};
this.getSpinner=函数(){
var self=这个;
喷丝头控制=$('')
.attr('id','spinner')
.attr('val',默认值)
。添加($(“
”)
.addClass(“微调器”)
.附加(
$(“”)
.append($('')
艾特先生({
id:'向上按钮',
值:'▲;'
}).appendTo($(''))
)
).append($(“”)
.append($('')
艾特先生({
id:'下拉按钮',
值:'▼;'
}).appendTo($(''))
)
)
);
var timeoutId=0;
$(“#向上按钮”,喷丝头控件).mousedown(函数(){
log(“鼠标按下”);
timeoutId=setInterval(self.rotateSpinner('spinner',true),200);
}).bind('mouseup mouseleave',function(){
log(“鼠标左键”);
//clearTimeout(timeoutId);
});
//$(“#downButton”).mousedown(函数(){
//警惕(‘此处’);
////timeoutId=setInterval(“rotateSpinner('spinner',false)”,200;
//}).bind('mouseup mouseleave',function(){
//clearTimeout(timeoutId);
// });
返回喷丝头控制;
};
//班尾
}
此
指的是DOM元素,在本例中是“#upButton”。如果您添加了一个指向类的变量,那么在方法中定义函数时可以引用这个变量,而不是this
function Spinner( max_value , min_value , div_id ){
var MAX_VALUE = 25;
var MIN_VALUE = -25;
var DEFAULT_VALUE = 0;
this.maxValue = max_value;
this.minValue = min_value;
this.divId = div_id;
this.spinnerControl; //spinner control object that is populated in getSpinner() method.
this.rotateSpinner = function (spinnerTextBoxId,up) {
document.getElementById(spinnerTextBoxId).value = up ? parseInt(document
.getElementById(spinnerTextBoxId).value) + 1 : parseInt(document
.getElementById(spinnerTextBoxId).value) - 1;
};
this.getSpinner = function( ){
var self = this;
spinnerControl = $('<input type="text"></input>')
.attr('id' , 'spinner')
.attr('val' , DEFAULT_VALUE)
.add( $('<ul></ul>')
.addClass("spinner")
.append(
$('<li></li>')
.append($('<input type="button"></input>')
.attr({
id : 'upButton',
value : '▲'
}).appendTo( $('<li></li>') )
)
).append( $('<li></li>')
.append($('<input type="button"></input>')
.attr({
id : 'downButton',
value : '▼'
}).appendTo( $('<li></li>') )
)
)
);
var timeoutId = 0;
$('#upButton' , spinnerControl).mousedown(function() {
console.log('mouse down');
timeoutId = setInterval(self.rotateSpinner('spinner' , true ) , 200);
}).bind('mouseup mouseleave', function() {
console.log('mouse left');
//clearTimeout(timeoutId);
});
// $('#downButton').mousedown(function() {
// alert('herer');
// //timeoutId = setInterval("rotateSpinner('spinner' , false ) ", 200);
// }).bind('mouseup mouseleave', function() {
// clearTimeout(timeoutId);
// });
return spinnerControl;
};
//class END
}
函数微调器(最大值、最小值、div\u id){
var最大值=25;
var最小值=-25;
var默认值=0;
this.maxValue=最大值;
this.minValue=最小值;
this.divId=div\u id;
this.spinnerControl;//在getSpinner()方法中填充的spinner控件对象。
this.rotateSpinner=函数(spinnerTextBoxId,向上){
document.getElementById(spinnerTextBoxId).value=up?parseInt(document
.getElementById(spinnerTextBoxId).value)+1:parseInt(文档
.getElementById(spinnerTextBoxId).value)-1;
};
this.getSpinner=函数(){
var self=这个;
喷丝头控制=$('')
.attr('id','spinner')
.attr('val',默认值)
。添加($(“
”)
new Spinner().rotateSpinner(arg1, arg2);