У меня есть список изображений, и при нажатии на изображение мне нужно выполнить вызов URL-адреса ajax и проверить некоторые параметры.
Если проверка прошла успешно, мне нужно будет показать fancybox, иначе я должен отобразить еще один fancybox.
Моя проблема: когда я нажимаю на изображение, и если проверка ложна, другой fanybox отображается должным образом. Но если проверка верна, Firebug выдает ошибку «слишком много рекурсии».
PS :: Ожидается, что проигрыватель video.js будет показан, если проверка верна.
Образец HTML:
<a id="videolink" href="#1" title="Test">
<img class="vidimg" src="1.png" videoId="1" width="180" height="180" />
</a>
<div style="display:none">
<video id="1" poster="1.png" class="video-js vjs-default-skin">
<source src="1362993728.mp4" type='video/mp4'>
<source src="1362993728.webm" type='video/webm'>
<source src="1362993728.ogv" type='video/ogg'>
</video>
</div>
jQuery:
$("a#videolink").click(function(){
$videoId = $(this).children("img.vidimg").attr("videoId");
$isValid = "true" or "false" ; // validation using .ajax() call
if($isValid == 'true'){
$(this).fancybox().click();
}else{
$("#myModal").fancybox().click()
}
});
Firebug показывает "слишком много рекурсии" в строке:
$videoId = $(this).children("img.vidimg").attr("videoId");
Другой контент fanybox, который будет отображаться в случае «false»:
<div style="display:none">
<div id="myModal"> Invalid Item</div>
</div>