Динамическое Youtube видео с jQuery & jSON - PullRequest
0 голосов
/ 28 марта 2011

Итак, у меня возвращается объект jSON, и я хочу вытащить миниатюры из объекта, добавить событие click, после щелчка он создает проигрыватель SWF на основе объекта jSON.Мне трудно в основном "привязать" эскиз к SWF.Поэтому, когда вы щелкнете по этой миниатюре, создайте этот SWF.

Вот JSFiddle для извлечения миниатюр.Я не уверен, правильно ли я это настраиваю.Не уверен, что установка события click должна быть в цикле for.

jsfiddle.net / MW9HR / 2 /

Любая помощь будет принята с благодарностью.

1 Ответ

1 голос
/ 28 марта 2011

Он должен не находиться в цикле, поскольку вы ( правильно ) используете метод live.

Однако вы неверно передаете данные SWF.

должно быть $('.thumbnail').live('click', {swf:$swf}, function(e){

Теперь вы можете получить к нему доступ из обработчика с помощью e.data.swf

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

$('.thumbnail').die('click').live('click', {swf:$swf}, function(e){

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

$videos += '<li class="video"><img class="thumbnail" data-videoid="'+$i+'" src="' + $thumbnail + '" alt="' +$title + '" /></li>';

Вы можете получить это videoid, если щелкнуть элемент с помощью метода .data() docs как $(this).data('videoid')

Демо на http://jsfiddle.net/gaby/JfqtK/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...