Javascript Jquery的变量更新错误
我正在使用这个函数来改变我的div文本,带有一些“typer”效果插件 问题是,当我更改变量(包含文本)时,我需要刷新整个页面以查看文本的更改Javascript Jquery的变量更新错误,javascript,jquery,Javascript,Jquery,我正在使用这个函数来改变我的div文本,带有一些“typer”效果插件 问题是,当我更改变量(包含文本)时,我需要刷新整个页面以查看文本的更改 function promp() { var a = reta(); if (a == 0) { zoomneg(); } else { zoom(); if (a == 1) { var str = "Text"; } else if
function promp() {
var a = reta();
if (a == 0) {
zoomneg();
} else {
zoom();
if (a == 1) {
var str = "Text";
} else if (a == 2) {
var str = "Text 2";
} else if (a == 3) {
var str = "Text 3";
} else if (a == 4) {
var str = "Text 4";
}
}
$(".element").typed({
strings: [str],
typeSpeed: 0,
contentType: 'text'
});
};
每次myvar a
更改时,有没有办法更改变量str
?当我更改值时,函数的其他部分工作,问题就在于这个变量
谢谢 这是一个可能的解决方案,使用getter和setter调用函数来处理值的变化
function zoomFn(a) {
if (a == 0) {
return zoomneg();
}
zoom();
}
function getTextByVal(a) {
switch (a) {
case 1:
return "Text";
case 2:
return "Text 2";
case 3:
return "Text 3";
case 4:
return "Text 4";
}
return null;
}
function handleValueChanged(a) {
zoomFn(a);
$(".element").typed({
strings: [getTextByVal(a)],
typeSpeed: 0,
contentType: 'text'
});
}
var o = {
set a(a){
this._a = a;
handleValueChanged(a);
},
get a(){
return this._a;
}
};
a
变量何时更改?或者,更改了什么变量?您可以创建对象,添加“a”作为字段,并覆盖将执行所需代码块的“a”setter函数。每次单击屏幕时。如果我单击左键,变量值变为-1,如果我单击右键,变量值变为+1。当a
更改时,此函数工作,只有str
值无法工作。假设执行promp函数,则仅当a为1、2、3或4时,才会分配str。我的建议是在第一个if语句之前使用console.log a。谢谢,威尔。console.log正确返回a值,但变量仍然相同。谢谢,Kaspars,但我不能使用此代码。console.log没有问题,但函数会停止以这种方式工作。