2010-02-12 4 views
1

Je me demandais si quelqu'un pouvait m'aider avec ce problème. Chaque fois que je montre une Ext.Window avec sa configuration modale définie sur true, dans FF et IE, cela fonctionne bien, je veux dire que tout ce qui se cache derrière la fenêtre popup est masqué, alors que dans Safari et Chrome, ce n'est pas le cas. Quand j'essaye de faire défiler la page, je peux voir que le masque est limité, ce qui n'est pas ce que je voulais faire parce qu'on peut facilement faire des choses sur la page parent même quand la fenêtre n'est pas encore fermée. Quelqu'un peut-il m'aider? Merci d'avance. : DModal ExtJS fenêtre ne cache pas tout derrière elle dans Safari et Chrome

Répondre

0

Il devrait fonctionner correctement dans Safari et Chrome dès sa sortie de l'emballage. Je viens de vérifier this page dans Safari 4.0.4 Mac et cela fonctionne très bien avec le défilement et/ou le redimensionnement du navigateur. Il y a peut-être un bogue dans Ext pour votre navigateur/plate-forme, mais c'est une fonctionnalité tellement basique que j'en doute. Cette page fonctionne-t-elle pour vous?

1

Je pensais que peut-être cela se produirait si vous étiez pas fonctionnant dans un Viewport, donc j'ai mis ensemble un exemple simple. Il s'avère que le masque modal fonctionne juste bien dans Safari dans cet exemple. Essayez-le et voyez où votre code diffère.

<html> 
    <head> 
    <link rel="stylesheet" href="ext-3.1.1/resources/css/ext-all.css" /> 
    <script src="ext-3.1.1/adapter/ext/ext-base.js"></script> 
    <script src="ext-3.1.1/ext-all-debug.js"></script> 
    <script> 
     Ext.BLANK_IMAGE_URL = 'ext-3.1.1/resources/images/default/s.gif'; 
     Ext.onReady(function(){ 
     var p = new Ext.Panel({ 
      renderTo: 'panel', 
      html: 'this is the panel', 
      tbar: [{ 
      text: 'Show a Modal Window', 
      handler: function() { 
       new Ext.Window({ 
       title: 'Title', 
       html: 'Try scrolling - the entire page should be modal', 
       modal: true 
       }).show(); 
      } 
      }] 
     }); 
     }); 
    </script> 
    </head> 
    <body> 
    <h1 style="height:100px;background-color:green;">html page</h1> 
    <div id="panel"></div> 
    <h1 style="height:1200px;background-color:green;">html page</h1> 
    </body> 
</html> 
0

Cela a aidé à mettre l'indice z pour les alertes Ext.Msg.show() à Infront de la fenêtre, ils ont été ouverts à partir pour moi.

Ext.WindowMgr.zseed = 10000; 
Questions connexes