2010-07-01 3 views
1

У меня есть сценарий JQuery, который действует как простой перенос изображения с эффектом сглаживания.Как рандомизировать и имитировать опрокидывание в jquery?

Вот тестовая версия текущего сценария в действии - http://fi-testing.co.uk/SO/rubix-cube.html

Как вы можете видеть, есть 9 блоков, клиент желает на опрокидывание происходят случайным образом (без зависания) к виду создать пульсация/пульсирующий эффект.

Как это будет достигнуто с помощью JQuery или php ?, и возможно ли, что зависание над разрывает рандомизацию и действует как нормальное?

Извините, если это неясно.

Спасибо за любую помощь.

Dan

+1

Я предполагаю, что вы знаете, разница между серверными языками, такими как PHP и клиентскими языками, такими как JavaScript ... –

ответ

1

Не вдаваясь слишком много в ваш код, вы можете создать случайность Math.random()

так, если у вас есть массив из куба заходов, индексированные 0 - 8, вы можете использовать

var randomNumber = parseInt(Math.random() * 9); 
var randomCube = cubes[randomNumber]; 

вы можете использовать setInterval, чтобы это повторять один раз в х мс

function randomlyChangeCubes() { ... } 

... 

setInterval(randomlyChangeCubes, 2000); 

вы можете использовать JQ uery trigger, чтобы вызвать эффект hover вручную, но я бы сказал, что было бы более читаемым извлечь код, который у вас есть в hover, функции, которую вы называете как от hover, так и от randomlyChangeCubes.

Все, что было сказано ... делает это совершенно случайно, вероятно, не будет делать это выглядеть рябь/пульсирующей ...

0

Вещи вы должны:

SetTimeout/setInterval = позвоню 'эффект' функция в заданное время случайное число = использовать это, чтобы вызвать необходимый элемент случайным образом, например, # box1, # BOX2 и т.д.

Я думаю, что это - должно быть довольно просто.

0

Это может быть сложно осуществить холодную смотреть хаотичность. Метод Math.random() создает псевдослучайные значения из равномерного распределения (т. Е. Все значения в диапазоне имеют одинаковую вероятность), и это будет выглядеть не очень хорошо.

Я не ожидал, и я не могу вам сказать, что распределение будет давать лучшие результаты, но вы можете попробовать нормальные и пуассоновские распределения:

http://www.ciphersbyritter.com/JAVASCRP/BINOMPOI.HTM (см исходного код страницы для кода)

 Смежные вопросы

  • Нет связанных вопросов^_^