Сергей К.
1649 повідомлень
#14 років тому
Столкнулся с проблемой

На странице запускаю функцию
function autoplay(dir, id, file, interval, rand){
setInterval(changeBlock, interval*1000, dir, id, file, rand)
}


Тут идет создание интервала для автозапуска функции changeBlock каждые секунд.
Во всех браузерах отлично работает, кроме ИЕ.
Проблема в том что в функцию changeBlock не передаются параметры . В других браузерах все работает.
Может кто то уже с этим столкнулся.
Роман Беляев
16382 повідомлення
#14 років тому
SetInterval(function() { changeBlock(dir, id, file, rand);} , interval*1000 )
А так?
Владимир М.
327 повідомлень
#14 років тому
Синтаксис:
Роман П.
1599 повідомлень
#14 років тому
Первый же результат в гугле для javascript setinterval IE extra arguments
Сергей К.
1649 повідомлень
#14 років тому
Цитата ("Crist"):
Первый же результат в гугле для javascript setinterval IE extra arguments ]http://webreflection.blogspot.com/2007/06/simple-settimeout-setinterval-extra.html

видел ссылку
понял что этот кусок нужен
/*@cc_on
(function(f){
window.setTimeout =f(window.setTimeout);
window.setInterval =f(window.setInterval);
})(function(f){return function(c,t){var a=.slice.call(arguments,2);return f(function(){c.apply(this,a)},t)}});
@*/

но фиг знает как его применить к моему примеру.
Сергей К.
1649 повідомлень
#14 років тому
Цитата ("intelleks"):
Синтаксис: ]http://javascript.ru/setinterval

я вроде писал. Не работает только в ИЕ.
Сергей К.
1649 повідомлень
#14 років тому
Цитата ("frig"):
SetInterval(function() { changeBlock(dir, id, file, rand);} , interval*1000 )
А так?

А вот так по ходу заработало, спасибо.
Сейчас еще протестирую.

Я че то вчера примерно так же делал, но не хотел работать. Правда было 2 ночи.
Роман Беляев
16382 повідомлення
#14 років тому
Цитата ("WebDesignStudio"):
А вот так по ходу заработало, спасибо.
Сейчас еще протестирую.

Не за что.
Евгений О.
2989 повідомлень
#14 років тому
Такая штука существует по крайней мере до ИЕ8 включительно. Зависит от используемой браузером версии JavaScript. Если каких-то заморочек не требуется, обходится очень просто.
setInterval(alert, 3000, 'aaaa'; - может (но не обязательно) вывести в ИЕ пустое окно.
setInterval("alert('" + "aaaa" + "'", 3000); - будет работать всегда и везде.