2013-09-04 8 views
0

J'ai une fenêtre contextuelle lancée avec une dimension WxL, où W = largeur et L = longueur.Fenêtre contextuelle de redimensionnement automatique

Le contenu correspond bien dans ce domaine pour quelques écrans. Cependant, dans certains cas (vues qui apparaissent conditionnellement), la taille de la fenêtre n'est pas assez grande et finit par afficher une barre de défilement.

La question ici est - Comment pouvons-nous ajuster automatiquement la taille de la fenêtre contextuelle afin qu'elle se redimensionne elle-même (en fonction du contenu), et donc éviter la barre de défilement dans tous les cas. Une option brute consiste à obtenir la taille maximale de toutes les vues possibles qui peuvent apparaître dans la fenêtre et toujours (pré) définir comme la taille de la fenêtre, c'est-à-dire quelque chose comme (W + w) x (L + l). Cependant, ce n'est pas idéal/préférable, car certaines vues n'ont pas beaucoup de contenu et sembleraient gênantes avec une taille de popup plus grande.

+0

vous pouvez définir min et max pour la hauteur normale screen..If ​​dépasse u peut calculer dynamiquement wil et régler la hauteur de height..the doit être auto est bien – user2587222

Répondre

0

Working demo

$(function(){ 
    $(window).resize(function(){ 
    // get the screen height and width 
    var maskHeight = $(window).height(); 
    var maskWidth = $(window).width(); 

    // calculate the values for center alignment 
    var dialogTop = (maskHeight - $('#dialog-box').height())/2; 
    var dialogLeft = (maskWidth - $('#dialog-box').width())/2; 

    // assign values to the overlay and dialog box 
    $('#dialog-overlay').css({ height:$(document).height(), width:$(document).width() }).show(); 
    $('#dialog-box').css({ top: dialogTop, left: dialogLeft, position:"fixed"}).show(); 
    }).resize(); 
}); 
Questions connexes