У меня есть iframe, и я пытаюсь получить доступ к его текстовой области и добавить прослушиватель:
onIframeRef = (node) => {
this.Iframe = node;
};
componentDidMount() {
let iframeDoc = this.Iframe.contentDocument || this.Iframe.contentWindow.document;
let textArea = iframeDoc.contentWindow.document.getElementById("some-textarea")[0];
textArea.addEventListener("input", this.onInput);
}
render() {
return <div>
<iframe
ref={this.onIframeRef}
sandbox="allow-same-origin"
srcdoc='<html><body><textarea id="some-textarea"></textarea></body></html>'
></iframe>
</div>
}
Я запутался, если установка srcdoc
означает, что код имеет тот же источник или нет, так как код не работает и this.Iframe
не имеет ни contentDocument
, ни contentWindow