EDIT: この問題は、iframe内の要素に特定のAPIやそのようなものがないとアクセスできないことがわかりました。それは解決されました。Operaの拡張機能のタグ名でWebサイトの一部を埋め込む方法
私はAstronomy Picture of the Dayウェブサイトの画像を埋め込む必要があります。ここで
<head>
<style>
body, html {
margin: 0px;
padding: 0px;
}
iframe {
border: none;
}
</style>
</head>
<body>
<iframe id="iframe" width="100%" height="600px"
src="https://apod.nasa.gov/apod/astropix.html"></iframe>
<div id="PlaceToPutTable"></div>
<script src="panel.js"></script>
</body>
私が今持っているJavaScriptをされています:私はそれを次のようにして.innerHTML
なしiframe.contentWindow.document.getElementByTagName("img")[0]
を使用してみましたが
var iframe = document.getElementById("iframe");
var div = document.getElementById("PlaceToPutTable");
div.innerHTML =
iframe.contentWindow.document.getElementsByTagName("a")[1];
は、ここで私が今持っているhtmlがあります。 これをOpera Sidebar Extensionとして使用していますので、.innerHTML
:Uncaught type error: cannot read property 'innerHTML' of undifined
を追加するとこのエラーが発生します。
this answerにあるコードを操作してこのコードを取得しましたが、天文画像にはid
が含まれていません。
これを行うと、コンソールに次のエラーが表示されます。Uncaught TypeError:iframe.contentWindow.document.getElementByTagNameが関数ではありません。 –
タイプミスのようです。それはgetElementsByTagNameです(要素の複数形に注意してください)。今編集していません –