我正在尝试在javascript警报中获取iframe的内容,但警报显示为空
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Untitled</title>
</head>
<style>
iframe {height:200px; width:300px; border:1px solid #000}
</style>
<script>
var iframe = document.getElementById("myFrame");
var iframe_contents = iframe.contentDocument.body.innerHTML;
function newDoc() {
alert (document.getElementById('myFrame').innerHTML) ;
}
</script>
<body>
<iframe src="http://api.adf.ly/api.php?key=c02fe2b360ee4b566a4f1e14d84b279b&uid=3141484&advert_type=banner&domain=adf.ly&url=http://somewebsite.com" id="myFrame">
</iframe><br>
</br>
<img src="http://www.giftworksconnect.com/wp-content/uploads/2012/10/download.png" width="100" onclick="newDoc(); return false;" style=" cursor: pointer;" border="0" id="adflink" />
</body>
</html>
任何帮助将不胜感激 此致
编辑:
我正在尝试获取IFRAME的内容,因为我正在使用Adf.ly API “http://api.adf.ly/api.php?key=c02fe2b360ee4b566a4f1e14d84b279b&uid=3141484&advert_type=banner&domain=adf.ly&url=http://somewebsite.com” 但是这个api会回复一个空白页面,其中包含我想要的短端URL 直接在我的网站脚本中使用缩短的网址
答案 0 :(得分:2)
我猜你的主(父)页面在另一个域上。在这种情况下,由于跨域限制,您禁止访问iframe内容。 如果您无法控制内部页面(api.adf.ly/api.php),则无法使用页面上的客户端代码处理它。
答案 1 :(得分:-1)
替换你的下一行
alert (document.getElementById('myFrame').innerHTML) ;
以下
alert(document.getElementById('myFrame').src);
认为它适用于你。