load initial page and display plain text

file-group-page
bat 3 years ago
parent 5d3026ae6b
commit b23f71a062

@ -107,9 +107,22 @@ export class Page extends HTMLElement {
const frames = wrap.getElementsByTagName('iframe')
this.frame = frames[frames.length - 1]
this.textArea.addEventListener('blur', e => {
const msg = ['srcdoc', e.target.value]
this.frame.contentWindow.postMessage(msg, '*')
this.display(e.target.value)
})
this.frame.addEventListener('load', () => {
this.display(this.body)
})
}
display(value) {
let doc = value
if (!(/<\w/).test(doc.substring(0, 30))) {
doc = `<pre style="white-space: pre-wrap; margin: 8px 12px; font-family: monospace;">` +
doc.replace("<", "&lt;").replace(">", "&gt;") +
`</pre>`
}
const msg = ['srcdoc', doc]
this.frame.contentWindow.postMessage(msg, '*')
}
set body(value) {

Loading…
Cancel
Save