У меня проблема с fancybox, который я хочу применить к изображениям в div, который динамически меняет свой контент с помощью .replaceWith. Код выглядит следующим образом:
$(document).load('fancybox', function() {
$('.various4').fancybox({
'width' : 800,
'height' : 750,
'autoScale' : false,
'transitionIn' : 'none',
'transitionOut' : 'none',
'type' : 'iframe'
});
});
Это относится к следующему HTML:
<a class="various4" href="http://www.glimmann.ch/kasri/index.html"><img height="400" width="600" src="bg.jpg" class="hoverbild" /></a>
Поскольку я использую функцию наведения с jquery и меняю содержимое div, я использовал следующий код для обеспечения эффекта hover, работающего после изменения содержимого div:
$(document).delegate('.hoverbild', 'hover', function(){
$(".hoverbild").hover(function() {
$(this).attr("src","bg-hover.jpg");
}, function() {
$(this).attr("src","bg.jpg");
});
});
Это работает без проблем. Но теперь, если вы хотите передать fancybox-часть делегату, это не сработает вообще. Нет предупреждения об ошибке, оно просто игнорируется.
$(document).delegate('.various4', 'fancybox', function(){
$('.various4').fancybox({
'width' : 800,
'height' : 750,
'autoScale' : false,
'transitionIn' : 'none',
'transitionOut' : 'none',
'type' : 'iframe'
});
});
Чего мне не хватает? Вместо этого я попытался использовать .live, но это не имеет значения.
Заранее благодарю за помощь.
PS: Вы можете найти все (не) работающее здесь: www.glimmann.ch. Просто переключайтесь между ссылками вверху фотографии.