我試圖訪問一個特定的元素(可能更類似於這個)使用iframe對象和jQuery但它不起作用。爲什麼我不能使用iframe對象和jQuery來遍歷此元素?
該iframeWindow
對象是非空但下一個聲明似乎不工作。我在這個答案上看到類似this的東西,但它不起作用。難道我做錯了什麼?
這裏是我的代碼:
RADIO.PHP
<!DOCTYPE html>
<html>
<head>
<title></title>
<script type="text/javascript" src="jquery.js"></script>
<script>
$(document).ready(function(){
setTimeout(function(){
var iframe= document.getElementById("iframe");
var iframeWindow = iframe.contentWindow;
var text=iframeWindow.$("div:nth-child(3) .c2").html();
console.log(text);
//DOESN'T PRINT "INNER MOST"
}, 1000);
});
</script>
</head>
<body>
<div class="c1">
<iframe id="iframe" src="api.php" height="200" width="300">
</iframe>
</div>
</body>
</html>
API.PHP
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<script type="text/javascript" src="jquery.js"></script>
<body id="abody">
Hey
<div class="c1"></div>
<div class="c1">
<p class="c2"></p>
</div>
<div class="c1">
<p class="c2">
INNER MOST
</p>
</div>
</body>
</html>
編輯:我已經糾正語法錯誤。
請注意,您的HTML無效。你不能在彼此中嵌套'p'元素,因此DOM結構不匹配你的選擇器 –
我編輯過,請檢查它 – Shanky
'iframeWindow!== inframeWindow'也檢查這一個。 – Jai