Я написал сценарий, который запускает 2 URL-адреса, основанных на некоторой логике случайных чисел, и я пытаюсь установить задержку, прежде чем один из них будет запущен (полсекунды), но я не думаю, что он работает правильно. Правильно ли я делаю это? Код ниже:Неправильное использование setTimeout?
var clicks = "http://www.urlone.com";
var impressions = "http://www.urltwo.com";
var randomNumber = (Math.random()*100);
function callOut() {
for (var i = 0; i < lengthVal; i++){
if (randomNumber < 75) {
var randomCounter = (Math.random()*100);
if (randomCounter < 50) {
setTimeout("image1.src = clicks;",500);
}
else if (randomCounter > 50) {
setTimeout("image1.src = impressions;",500);
}
}
}
}
Да, это неправильно. Используйте 'function() {...}' вместо '" ... "'. И, не используйте цикл, а функцию + счетчик (в настоящее время все ваши методы срабатывают вместе через полсекунды). –
что такое клики и показы? используйте setTimeout (function() {image1.src = clicks;}, 500); – silly
@RobW Я должен был «ответить на свой вопрос», но, конечно, используя все эти прекрасные советы. Спасибо всем за ответы/комментарии, хотя – zik