|
21 | 21 | ion-modal#custom { |
22 | 22 | --border-radius: 50px !important; |
23 | 23 | } |
| 24 | + .content-wrapper { |
| 25 | + height: 100%; |
| 26 | + |
| 27 | + overflow: hidden; |
| 28 | + } |
24 | 29 | </style> |
25 | 30 | </head> |
26 | 31 |
|
|
48 | 53 | </ion-app> |
49 | 54 |
|
50 | 55 | <script> |
| 56 | + const renderContent = () => { |
| 57 | + return `<ion-content class="ion-padding"> |
| 58 | + Hello World! |
| 59 | +
|
| 60 | + <br /> |
| 61 | +
|
| 62 | + <p> |
| 63 | + Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec vitae lobortis felis, eu sodales enim. Nam |
| 64 | + risus nibh, placerat at rutrum ac, vehicula vel velit. Lorem ipsum dolor sit amet, consectetur adipiscing |
| 65 | + elit. Vestibulum quis elementum ligula, ac aliquet nulla. Mauris non placerat mauris. Aenean dignissim lacinia |
| 66 | + porttitor. Praesent fringilla at est et ullamcorper. In ac ante ac massa porta venenatis ut id nibh. Fusce |
| 67 | + felis neque, aliquet in velit vitae, venenatis euismod libero. Donec vulputate, urna sed sagittis tempor, mi |
| 68 | + arcu tristique lacus, eget fringilla urna sem eget felis. Fusce dignissim lacus a scelerisque vehicula. Nulla |
| 69 | + nec enim nunc. Quisque nec dui eu nibh pulvinar bibendum quis ut nunc. Duis ex odio, sollicitudin ac mollis |
| 70 | + nec, fringilla non lacus. Maecenas sed tincidunt urna. Nunc feugiat maximus venenatis. Donec porttitor, felis |
| 71 | + eget porttitor tempor, quam nulla dapibus nisl, sit amet posuere sapien sapien malesuada tortor. Pellentesque |
| 72 | + habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Quisque luctus, sapien nec |
| 73 | + tincidunt efficitur, nibh turpis faucibus felis, in sodales massa augue nec erat. Morbi sollicitudin nisi ex, |
| 74 | + et gravida nisi euismod eu. Suspendisse hendrerit dapibus orci, non viverra neque vestibulum id. Quisque vitae |
| 75 | + interdum ligula, quis consectetur nibh. Phasellus in mi at erat ultrices semper. Fusce sollicitudin at dolor |
| 76 | + ac lobortis. Morbi sit amet sem quis nulla pellentesque imperdiet. Nullam eu sem a enim maximus eleifend non |
| 77 | + vulputate leo. Proin quis congue lacus. Pellentesque placerat, quam at tempus pulvinar, nisl ligula tempor |
| 78 | + risus, quis pretium arcu odio et nulla. Nullam mollis consequat pharetra. Phasellus dictum velit sed purus |
| 79 | + mattis maximus. In molestie eget massa ut dignissim. In a interdum elit. In finibus nibh a mauris lobortis |
| 80 | + aliquet. Proin rutrum varius consequat. In mollis dapibus nisl, eu finibus urna viverra ac. Quisque |
| 81 | + scelerisque nisl eu suscipit consectetur. |
| 82 | + </p> |
| 83 | +
|
| 84 | + <p> |
| 85 | + Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec vitae lobortis felis, eu sodales enim. Nam |
| 86 | + risus nibh, placerat at rutrum ac, vehicula vel velit. Lorem ipsum dolor sit amet, consectetur adipiscing |
| 87 | + elit. Vestibulum quis elementum ligula, ac aliquet nulla. Mauris non placerat mauris. Aenean dignissim lacinia |
| 88 | + porttitor. Praesent fringilla at est et ullamcorper. In ac ante ac massa porta venenatis ut id nibh. Fusce |
| 89 | + felis neque, aliquet in velit vitae, venenatis euismod libero. Donec vulputate, urna sed sagittis tempor, mi |
| 90 | + arcu tristique lacus, eget fringilla urna sem eget felis. Fusce dignissim lacus a scelerisque vehicula. Nulla |
| 91 | + nec enim nunc. Quisque nec dui eu nibh pulvinar bibendum quis ut nunc. Duis ex odio, sollicitudin ac mollis |
| 92 | + nec, fringilla non lacus. Maecenas sed tincidunt urna. Nunc feugiat maximus venenatis. Donec porttitor, felis |
| 93 | + eget porttitor tempor, quam nulla dapibus nisl, sit amet posuere sapien sapien malesuada tortor. Pellentesque |
| 94 | + habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Quisque luctus, sapien nec |
| 95 | + tincidunt efficitur, nibh turpis faucibus felis, in sodales massa augue nec erat. Morbi sollicitudin nisi ex, |
| 96 | + et gravida nisi euismod eu. Suspendisse hendrerit dapibus orci, non viverra neque vestibulum id. Quisque vitae |
| 97 | + interdum ligula, quis consectetur nibh. Phasellus in mi at erat ultrices semper. Fusce sollicitudin at dolor |
| 98 | + ac lobortis. Morbi sit amet sem quis nulla pellentesque imperdiet. Nullam eu sem a enim maximus eleifend non |
| 99 | + vulputate leo. Proin quis congue lacus. Pellentesque placerat, quam at tempus pulvinar, nisl ligula tempor |
| 100 | + risus, quis pretium arcu odio et nulla. Nullam mollis consequat pharetra. Phasellus dictum velit sed purus |
| 101 | + mattis maximus. In molestie eget massa ut dignissim. In a interdum elit. In finibus nibh a mauris lobortis |
| 102 | + aliquet. Proin rutrum varius consequat. In mollis dapibus nisl, eu finibus urna viverra ac. Quisque |
| 103 | + scelerisque nisl eu suscipit consectetur. |
| 104 | + </p> |
| 105 | +
|
| 106 | + </ion-content>`; |
| 107 | + }; |
51 | 108 | async function createModal(presentingEl, opts) { |
52 | 109 | // create component to open |
53 | 110 | const element = document.createElement('div'); |
54 | 111 | element.innerHTML = ` |
55 | 112 | <ion-header id="modal-header"> |
56 | 113 | <ion-toolbar> |
57 | | - <ion-title>Contacts</ion-title> |
58 | 114 | <ion-buttons slot="end"> |
59 | | - <ion-button class="add"> |
60 | | - <ion-icon name="add" slot="icon-only"></ion-icon> |
61 | | - </ion-button> |
| 115 | + <ion-button class="add">Add</ion-button> |
| 116 | + <ion-button class="dismiss">Close</ion-button> |
| 117 | + <ion-button class="replace">Replace</ion-button> |
62 | 118 | </ion-buttons> |
63 | 119 | </ion-toolbar> |
64 | 120 | </ion-header> |
65 | | - <ion-content class="ion-padding"> |
66 | | - Hello World! |
67 | | - <ion-button class="dismiss">Dismiss Modal</ion-button> |
68 | | -
|
69 | | - <br /> |
70 | | -
|
71 | | - <p> |
72 | | - Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec vitae lobortis felis, eu sodales enim. Nam |
73 | | - risus nibh, placerat at rutrum ac, vehicula vel velit. Lorem ipsum dolor sit amet, consectetur adipiscing |
74 | | - elit. Vestibulum quis elementum ligula, ac aliquet nulla. Mauris non placerat mauris. Aenean dignissim lacinia |
75 | | - porttitor. Praesent fringilla at est et ullamcorper. In ac ante ac massa porta venenatis ut id nibh. Fusce |
76 | | - felis neque, aliquet in velit vitae, venenatis euismod libero. Donec vulputate, urna sed sagittis tempor, mi |
77 | | - arcu tristique lacus, eget fringilla urna sem eget felis. Fusce dignissim lacus a scelerisque vehicula. Nulla |
78 | | - nec enim nunc. Quisque nec dui eu nibh pulvinar bibendum quis ut nunc. Duis ex odio, sollicitudin ac mollis |
79 | | - nec, fringilla non lacus. Maecenas sed tincidunt urna. Nunc feugiat maximus venenatis. Donec porttitor, felis |
80 | | - eget porttitor tempor, quam nulla dapibus nisl, sit amet posuere sapien sapien malesuada tortor. Pellentesque |
81 | | - habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Quisque luctus, sapien nec |
82 | | - tincidunt efficitur, nibh turpis faucibus felis, in sodales massa augue nec erat. Morbi sollicitudin nisi ex, |
83 | | - et gravida nisi euismod eu. Suspendisse hendrerit dapibus orci, non viverra neque vestibulum id. Quisque vitae |
84 | | - interdum ligula, quis consectetur nibh. Phasellus in mi at erat ultrices semper. Fusce sollicitudin at dolor |
85 | | - ac lobortis. Morbi sit amet sem quis nulla pellentesque imperdiet. Nullam eu sem a enim maximus eleifend non |
86 | | - vulputate leo. Proin quis congue lacus. Pellentesque placerat, quam at tempus pulvinar, nisl ligula tempor |
87 | | - risus, quis pretium arcu odio et nulla. Nullam mollis consequat pharetra. Phasellus dictum velit sed purus |
88 | | - mattis maximus. In molestie eget massa ut dignissim. In a interdum elit. In finibus nibh a mauris lobortis |
89 | | - aliquet. Proin rutrum varius consequat. In mollis dapibus nisl, eu finibus urna viverra ac. Quisque |
90 | | - scelerisque nisl eu suscipit consectetur. |
91 | | - </p> |
92 | | -
|
93 | | - <p> |
94 | | - Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec vitae lobortis felis, eu sodales enim. Nam |
95 | | - risus nibh, placerat at rutrum ac, vehicula vel velit. Lorem ipsum dolor sit amet, consectetur adipiscing |
96 | | - elit. Vestibulum quis elementum ligula, ac aliquet nulla. Mauris non placerat mauris. Aenean dignissim lacinia |
97 | | - porttitor. Praesent fringilla at est et ullamcorper. In ac ante ac massa porta venenatis ut id nibh. Fusce |
98 | | - felis neque, aliquet in velit vitae, venenatis euismod libero. Donec vulputate, urna sed sagittis tempor, mi |
99 | | - arcu tristique lacus, eget fringilla urna sem eget felis. Fusce dignissim lacus a scelerisque vehicula. Nulla |
100 | | - nec enim nunc. Quisque nec dui eu nibh pulvinar bibendum quis ut nunc. Duis ex odio, sollicitudin ac mollis |
101 | | - nec, fringilla non lacus. Maecenas sed tincidunt urna. Nunc feugiat maximus venenatis. Donec porttitor, felis |
102 | | - eget porttitor tempor, quam nulla dapibus nisl, sit amet posuere sapien sapien malesuada tortor. Pellentesque |
103 | | - habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Quisque luctus, sapien nec |
104 | | - tincidunt efficitur, nibh turpis faucibus felis, in sodales massa augue nec erat. Morbi sollicitudin nisi ex, |
105 | | - et gravida nisi euismod eu. Suspendisse hendrerit dapibus orci, non viverra neque vestibulum id. Quisque vitae |
106 | | - interdum ligula, quis consectetur nibh. Phasellus in mi at erat ultrices semper. Fusce sollicitudin at dolor |
107 | | - ac lobortis. Morbi sit amet sem quis nulla pellentesque imperdiet. Nullam eu sem a enim maximus eleifend non |
108 | | - vulputate leo. Proin quis congue lacus. Pellentesque placerat, quam at tempus pulvinar, nisl ligula tempor |
109 | | - risus, quis pretium arcu odio et nulla. Nullam mollis consequat pharetra. Phasellus dictum velit sed purus |
110 | | - mattis maximus. In molestie eget massa ut dignissim. In a interdum elit. In finibus nibh a mauris lobortis |
111 | | - aliquet. Proin rutrum varius consequat. In mollis dapibus nisl, eu finibus urna viverra ac. Quisque |
112 | | - scelerisque nisl eu suscipit consectetur. |
113 | | - </p> |
114 | | -
|
115 | | - </ion-content> |
| 121 | +
|
| 122 | + <div class="content-wrapper">${renderContent()}</div> |
116 | 123 |
|
117 | 124 | <ion-footer> |
118 | 125 | <ion-toolbar> |
|
134 | 141 | presentModal(topModal, opts); |
135 | 142 | }); |
136 | 143 |
|
| 144 | + const wrapper = element.querySelector('.content-wrapper'); |
| 145 | + const replace = element.querySelector('ion-button.replace'); |
| 146 | + replace.addEventListener('click', () => { |
| 147 | + wrapper.innerHTML = renderContent(); |
| 148 | + }); |
| 149 | + |
137 | 150 | // present the modal |
138 | 151 | const modalElement = await modalController.create({ |
139 | 152 | presentingElement: presentingEl, |
|
0 commit comments