Я извлек ваш код и думаю (надеюсь), что у меня может быть решение для вас, при условии, что я правильно определил вашу проблему.
Я вставил ссылку YouTube в форму и был перенаправлен на/videos/1
, где была ссылка «видео», которая позже была заменена на встроенную миниатюру видео.
Проблема, с моей точки зрения, заключается в следующем:
$("#video_div img").click(function() {
$("div.embed").toggle();
});
Когда вызывается обработчик готовности документа, в вашем документе еще нет изображения, поэтому ваш селектор #video_div img
не может ничего найти.Это можно легко исправить с помощью метода live()
jQuery вместо click()
документация .Я обновил его так:
$("#video_div img").live('click', function() {
$(this).toggle();
$("div.embed").toggle();
});
Что, казалось, работало нормально: при нажатии исчезла миниатюра и появилось встроенное видео.
Надеюсь, что это поможет вам направить вас в правильном направлении.