Papier polymère – boîte de dialogue non centrée

Dans mon application polymère, lorsque j'ouvre une boîte papier à l'aide d'un iPhone, elle n'est pas centrée, par opposition à l'ouvrir en utilisant Chrome ou Safari à l'aide d'un Mac ou d'un PC de bureau.

Je crée dynamiquement l'élément papier-dialogue et le place dans le modèle DOM en utilisant javascript, puis en appelant open() :

 var d = document.createElement('paper-dialog'); d.innerHTML = "<h2>Dialog Title</h2>" "<p>some content</p>"+ '<div class="buttons">'+ "<paper-button >More Info...</paper-button>"+ "<paper-button dialog-dismiss>Decline</paper-button>"+ "<paper-button dialog-confirm autofocus>Accept</paper-button>"+ "</div>"; var b = Polymer.dom(this.root).appendChild(d); b.open(); 

Je n'utilise pas de styles spéciaux ou de requêtes multimédias. La raison pour laquelle j'ajoute la boîte de dialogue est parce que j'ai beaucoup de messages de dialogue différents et différents contenus à afficher à des moments différents, et chacun d'entre eux devrait appeler un rappel sur un écran différent, dépend de qui a ajouté la boîte de dialogue. En d'autres termes, je dois ajouter mes boîtes de dialogue comme dans $ mdDialog de matériel angulaire , je sais que ce n'est pas trivial pour le polymère, peut-être pas l'utilisation prévue, mais pour mon cas, c'est ce dont j'ai besoin, à moins qu'il n'y ait une meilleure façon.

Voir la capture d'écran du problème ci-dessous

IPhone: Entrez la description de l'image ici

Chrome: Entrez la description de l'image ici

La question était que j'ai appelé b.open(); Juste après var b = Polymer.dom(this.root).appendChild(d); .

Comme j'ajoute l'élément dynamiquement, j'aurais mis b.open(); Sous un appel this.async() , tel que mentionné dans la documentation du polymère pour des cas similaires.

Aussi corrigé le code dans mon dialogue-manager