@Brain_code

Почему yii2-fotorama-widget не роботает в модалке?

Проект на Yii2 basic віджет yii2-fotorama-widget норм роботает в админке а вот на главной в модалке проблема почемуто не роботает

вот подключил модалку віджетом в index

<?php \yii\bootstrap\Modal::begin([
     //'header' => 'Детальна інформація:',
    'footer' => '<button type="button" class="btn btn-default" data-dismiss="modal" >Закрити</button>',
    'id' => 'info-work',
    'size' => 'modal-lg',

 ]);


 \yii\bootstrap\Modal::end()?>

и вот виджет вивожу с странице https://github.com/MetalGuardian/yii2-fotorama-widget

<?php 
     $fotorama = \metalguardian\fotorama\Fotorama::begin(
         [
             'options' => [
             'loop' => true,
             'hash' => true,
             'ratio' => 800/600,
        ],
        'spinner' => [
            'lines' => 20,
        ],
        'tagName' => 'span',
        'useHtmlData' => false,
        'htmlOptions' => [
            'class' => 'custom-class',
            'id' => 'custom-id',
        ],
    ]
); 
?>
    <img src="http://s.fotorama.io/1.jpg">    
    <img src="http://s.fotorama.io/2.jpg">
    <img src="http://s.fotorama.io/3.jpg">
    <img src="http://s.fotorama.io/4.jpg">
    <img src="http://s.fotorama.io/5.jpg">
<?php $fotorama->end(); ?>

в результате картинки есть но карусель не роботает...

для модалки у меня другая view так как через ajax роботаю

public function actionFullJob(){

        $id = Yii::$app->request->get('id');
        $portfolio = Portfolio::findOne($id);

        if (empty($portfolio)){
            return false;

        }else{
            $this->layout = false;

            return $this->render('portfolio-modal', [
                'portfolio' => $portfolio
            ]);

        }

    }


возможно в модалку надо както передать что то?

вот запрос:

$('.info-work').on('click', function (e) {
        e.preventDefault(); // Відміна стандартного переходу ссилки
        var id = $(this).data('id');
        // var fotorama = $fotoText.data('fotorama');

        $.ajax({
            url: 'site/full-job',
            data: {id:id},
            type: 'GET',
            success: function(res){
                if(!res){
                    alert('Увага! Виникла помилка!')
                }
                // fotorama.show();
                $('#info-work .modal-body').html(res);
                $('#info-work').modal('show');

            },
            error: function(){
                alert('Error');
            },
            beforeSend: function() {
                $('.loading').show();
            },
            complete: function(){
                $('.loading').hide();

            }
        });
    });
  • Вопрос задан
  • 168 просмотров
Пригласить эксперта
Ответы на вопрос 1
slo_nik
@slo_nik Куратор тега Yii
Добрый день.
Потому, что надо заново инициализировать карусель.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
26 апр. 2024, в 09:18
500 руб./в час
26 апр. 2024, в 06:46
1500 руб./в час
26 апр. 2024, в 05:31
1000 руб./за проект