我确定我只是以某种方式搞砸了我的代码(仍然有点菜鸟)但我正在尝试创建一个随机数(工作正常)然后使用该随机数中的变量发送每 3 名用户中就有 1 名参加了课后调查(根本无法正常工作)。
有没有办法做到这一点,如果有,我做错了什么?
这是代码(这是在 adobe Captivate 类(class)中,所以我也在使用 API 接口(interface)库,但那部分也工作正常)。
目前,这串代码每次都会将用户发送到列出的链接,而不是依赖于变量。
var jsRandomNumber = 0
function getRandomInt(min, max) {
var jsRandomNumber = Math.floor(Math.random() * (max - min + 1)) + min;
alert(jsRandomNumber);
window.cpAPIInterface.setVariableValue('randomnumber', jsRandomNumber);
}
getRandomInt (1, 3)
function randomQuizGenerator() {
if (var jsRandomNumber = 1) {
window.open("http://www.w3schools.com");
window.cpAPIInterface.next();
} else {
window.cpAPIInterface.next();
}
}
randomQuizGenerator()
最佳答案
根据您的代码,我发现了三个问题,其中两个是对变量的误解,第三个是对条件的误解。
首先,您只需在顶部声明一次变量 var jsRandomNumber
。然后,您只需使用其名称 jsRandomNumber
即可访问它。每次将 var
放在它前面时,您都会在该范围内创建一个新变量。
对于 if
语句,再次使用 jsRandomNumber
而不是 var jsRandomNumber
,但是你还需要使用 ==
来比较两个值。使用 jsRandomNumber = 1
会将 jsRandomNumber
设置为 1,然后该值用于确定 if
是否应该通过,在此情况总是如此,因为 1 的计算结果恰好为 true
。 jsRandomNumber == 1
将根据 jsRandomNumber
的值返回 true
或 false
。
var jsRandomNumber = 0
function getRandomInt(min, max) {
jsRandomNumber = Math.floor(Math.random() * (max - min + 1)) + min;
alert(jsRandomNumber);
window.cpAPIInterface.setVariableValue('randomnumber', jsRandomNumber);
}
getRandomInt (1, 3)
function randomQuizGenerator() {
if (jsRandomNumber == 1) {
window.open("http://www.w3schools.com");
window.cpAPIInterface.next();
} else {
window.cpAPIInterface.next();
}
}
randomQuizGenerator()
关于javascript - 是否可以使用 javascript 在条件语句中将某人发送到网站?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39003631/