2013-05-23 2 views
2

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

Javascript

<script type="text/javascript" src="/javascript/jquery/plugins/fancybox/fancybox.js?b84fd"></script> 

<script type="text/javascript"> 

$(document).ready(function() { 

/* This is basic - uses default settings */ 

$("a#single_image").fancybox(); 

/* Using custom settings */ 

$("a#inline").fancybox({ 
'hideOnContentClick': true 
}); 



/* Apply fancybox to multiple items */ 

$(".iframe").fancybox({ 
'transitionIn' : 'elastic', 
'transitionOut' : 'elastic', 
'speedIn'  : 600, 
'speedOut'  : 200, 
'overlayShow' : false, 
'width' : 600,   // set the width 
    'height' : 600,   // set the height 
    'type' : 'iframe',  // tell the script to create an iframe 
    'scrolling' : 'no' 

}); 

}); 

</script> 

HTML код

<a id="inline" href="/content/test.html">Test</a> 

Пожалуйста, предложите мне идею, как я могу установить ширину и высоту для FancyBox.

Я использую FancyBox в BigCommerce с помощью этой ссылки помогают Big commerce help

Благодарности

+0

"600px" и "600px" вместо 600 и 600 Случается ли работать? Размеры обычно указаны в некоторых единицах измерения –

+0

@BenjaminGruenbaum Я установил ** «600px» и «600px» ** согласно вашему предложению, но все еще не работает. – Jalpesh

+1

http://jsfiddle.net/v9yFs/, кажется, отлично работает, какую версию jQuery и fancybox вы используете? – Spokey

ответ

3

Fancybox версия 1.2.5 устарела и не поддерживает параметры, которые вы указали. Попробуйте использовать это вместо этого.

$(".iframe").fancybox({ 
    'overlayShow': false, 
    'frameWidth': 500, // set the width 
    'frameHeight': 100, // set the height 
    'type': 'iframe', // tell the script to create an iframe 
}); 
+0

Я использую этот fancybox на сайте bigcommerce, и теперь я проверяю, что высота и ширина firebug заданы одним css, который недоступен стороннему разработчику. Есть ли способ переопределить старый css с помощью скрипта java и спасибо за помощь me @Sopkey – Jalpesh

+0

, вы можете попробовать это и посмотреть, если это работает http://jsfiddle.net/v9yFs/16/ – Spokey

+0

+1: Я думаю, что вы не на самом деле нужен обратный вызов. @Jalpesh: образец Spokey работает очень хорошо, однако вам нужно добавить iframe 'class =" в свой html-код, чтобы он работал с этим скриптом. См. Обновленный http://jsfiddle.net/v9yFs/18/ – JFK

3

Этот код работает для меня настройки высоты и ширины изображения

я хочу, чтобы отобразить в FancyBox

$('#viewlogo').live('click', function(){ 
    $this = $(this); 
    $.fancybox({ 
     'opacity'  : true, 
     'overlayShow' : true, 
     'overlayColor' : '#525252', 
     'width'   : 400, 
     'height'  : 400, 
     'href'   : $this.attr('href') 
    }); 
    return false; 
}); 

<a id="viewlogo" class="iframe" href="<?php echo $orig_image; ?>"><img class ="printhide" src="<?php echo $topic_media_URL; ?>" border="1" width="100" height="100" /></a> 

Html-код

<a id="viewlogo" class="iframe" href="<?php echo $orig_image; ?>"><img src="<?php echo $topic_media_URL; ?>" border="1" width="100" height="100" /></a> 
+0

Привет, '.live' устарел и не должен использоваться в новом коде. Вместо этого используйте '.on'. Кроме того, я не понимаю, что делает обработчик кликов для –

+0

. Я буду заботиться в будущем, что обработчик кликов предназначен для запуска полного изображения при нажатии на миниатюру. – Rinzler

+0

Я использую эту функцию, но все еще не работаю – Jalpesh

1

использовать этот код:

$(".fancybox-wrap").height($(".fancybox-iframe").contents().find("html").height() + 30); 
$(".fancybox-skin").height($(".fancybox-iframe").contents().find("html").height() + 30); 
$(".fancybox-inner").height($(".fancybox-iframe").contents().find("html").height()); 
Смежные вопросы