SimpleModal, изменяющий размер контейнера

У вас есть два способа получить элемент управления в formGroup

myForm.controls.name_of_control
//and
myForm.get('name_of_control')

Используя «get», убедитесь, что если Angular изменит «модель» formGroup (*), это изменение не повлияет на ваш код

(*) Представьте, что в более новой версии Angular элементы управления хранятся в свойстве «customControls», а не в «элементах управления», команда Angular изменит функцию «get ()» на дайте контроль, но вы потеряете myForm.controls, потому что это свойство исчезает

9
задан Peter Mortensen 20 April 2013 в 06:03
поделиться

2 ответа

Вы можете сделать это, добавив и удалив классы для элемента modalContainer.

Fog Creek Copilot использует SimpleModal, с двумя размерами, обычным и широким. Если вы зайдете в Copilot и нажмете «Войти», вы увидите нормальный размер. Теперь поместите в консоль Firebug

>> $('.modalContainer').addClass('wide')

. Вы должны увидеть, что контейнер стал шире. Все, что вам нужно сделать, чтобы сделать эту работу на вашем сайте, это определить классы для всех размеров, которые вы хотите, и добавлять и удалять их динамически.

3
ответ дан 4 December 2019 в 11:44
поделиться

I'd like to suggest a simpler and more flexible solution:

Visit http://www.ericmmartin.com/simplemodal-test/, run the following code in Firebug and then click on "button" in the dialog to resize it.

// Inject a CSS class into the document
$('head style[type=text/css]').append('.wide{width:750px !important;}');

$('#modalContentTest').modal({
  onShow:function(dialog){
    dialog.data.find('.animate').click(function(){

      // You can put this code in your "my.php" callback

      dialog.container.addClass('wide');

      /*
      // OR set the width explicitly
      // (make sure you remove the addClass line if you want to use this)
      dialog.container.width(700);
      */

      /*
        Force SimpleModal to reposition the 
        dialog by triggering its resize event
      */
      $(window).trigger('resize.simplemodal');

    }); //end click
  } // end onShow
}); // end modal

With this method you don't have to define new CSS to re-center the dialog and you can let SimpleModal take care of browser inconsistencies.

4
ответ дан 4 December 2019 в 11:44
поделиться
Другие вопросы по тегам:

Похожие вопросы: