2015-10-12 16 views
8

Io uso questo esempio dal documento di polimeropaper-finestra in polimero non chiude in iPhone

<paper-dialog> 
    <h2>Header</h2> 
    <paper-dialog-scrollable> 
     Lorem ipsum... 
    </paper-dialog-scrollable> 
    <div class="buttons"> 
    <paper-button dialog-dismiss>Cancel</paper-button> 
    <paper-button dialog-confirm>Accept</paper-button> 
    </div> 
</paper-dialog> 

in tutti i browser finestra si chiude quando clicco sul posto che non è la finestra di dialogo, ma su iPhone IOS 8.4 non funziona. Non riesco a chiudere la finestra di dialogo.

Come posso risolvere questo problema?

risposta

0

So che c'è un problema Z-index con Safari su IOS. Probabilmente il dialogo cartaceo non è al top come dovrebbe essere. Potrebbe essere necessario un prefisso -webkit alla classe quando utilizza IOS.

+0

potete darmi preghiamo di codice di esempio? Ho provato a mettere z-index: 1000; ma questo non funziona. –

0

Dopo alcune ricerche, ho trovato il problema sul polimero Github, e non v'è un modo per incidere in modo che funziona:

_finishRenderOpened: function() { 
    // focus the child node with [autofocus] 
    if (!this.noAutoFocus) { 
    this._focusNode.focus(); 
    } 

    if(this.withBackdrop) { 
    this.parentNode.insertBefore(this._backdrop, this); 
    } 

    this.fire('iron-overlay-opened'); 

    this._squelchNextResize = true; 
    this.async(this.notifyResize); 
}, 

(codice https://github.com/dhpollack)

"Per attuare mod di dhpollack in modo piacevole, aggiungere questa funzione al vostro elemento personalizzato:

patchOverlay: function (e) { 
    if (e.target.withBackdrop) { 
     e.target.parentNode.insertBefore(e.target._backdrop, e.target); 
    } 
}, 

E aggiungere on-iron-overlay-opened="patchOverlay" per s tutti i tuoi <paper-dialog>'"

(attuazione da https://github.com/rubenstolk)

Github problema: https://github.com/PolymerElements/paper-dialog/issues/7

auguro che funziona per voi :)

+0

non risolve il problema. La mia finestra di dialogo non è modale –