У меня есть массив изображений, которые я хочу перебирать бесконечно, т. е. 1, 2, 3, 1, 2, 3...
Сначала я попытался сделать это, используя следующий код:
var images = [
"/images/image1.jpg",
"/images/image2.jpg",
"/images/image3.jpg"
];
var obj = { currentValue: 0 };
var maxValue = 2;
//loop through the items
var infiniteLoop = setInterval(function() {
if(obj.currentValue == maxValue) {
obj.currentValue = 0;
}
// ... Code to fade in currentItem ...
obj.currentValue++;
}, 5000);
I' d читал, что это правильный метод передачи переменной по ссылке, но по какой-то причине я никогда не могу установить obj.currentValue обратно в 0, когда все изображения пропущены.
Я придумал альтернативный способ было бы установить значение поля html:
var images = [
"/images/image1.jpg",
"/images/image2.jpg",
"/images/image3.jpg"
];
var maxValue = 2;
//loop through the items
var infiniteLoop = setInterval(function() {
if(parseInt($('#currentItem').val()) == maxValue) {
$('#currentItem]').val('0');
}
//... code to fade in currentItem ...
var tmp = parseInt($('#currentItem').val());
tmp++;
$('#currentItem').val(tmp);
}, 5000);
Однако у меня все еще та же проблема.По какой-то причине, всякий раз, когда я дохожу до конца списка изображений, я не могу установить значение скрытого поля и мой бесконечный цикл никогда не перезапускается.
Я пропустил что-то очевидное здесь? Кажется, я не могу понять, как заставить это работать.
Если у кого-то есть более эффективный метод достижения этого, я бы также буду очень благодарен, если поделитесь :-)
Спасибо
-121---8498 57-
OpenAL — один из запутанных проектов, по которым можно получить соответствующую информацию.Существует ли официальный OpenAL? Что такое контроль CreativeLabs над проектом?
Я ищу кроссплатформенную аудиобиблиотеку для поддержки IOS (iPhone, iPad), Android, Windows и Linux.
Удовлетворяет ли OpenAL эту потребность? Что такое лицензия OpenAL? Хотя мы намерены выпустить часть нашего исходного кода, мы не заинтересованы в том, чтобы нас принуждали к этому из-за конфликта лицензий.
У меня достаточно доказательств, чтобы предположить, что он работает на Android. Соответствующие ссылки ( Android OpenAL?), плюс поиск в Google дает положительные результаты.
Насколько я знаю, Android официально поддерживает OpenSL. Однако Android, похоже, является единственной платформой, которая в настоящее время поддерживает OpenSL, поэтому это не вариант.