使用jquery中l(wèi)oad載入另一個html頁面,能操作另一個頁面中元素麼
如果想要在本頁面中,完整的載入一個子頁面話,不建議直接load到本頁面的元素上的哦;
你看這種解決方案會不會好一點:
一般做法是,先把這個子頁面,透過修改src屬性,載入在iframe裡(這樣子頁面和母頁面都有各自獨立的作用域,最大限度的減少各種衝突);
下一步就是取得iframe子頁面中的window對象,以後就可以透過這個子頁面的window對象,取得子頁面對應(yīng)的元素並且進(jìn)行操作咯:
<iframe src="動態(tài)替換這個屬性即可"></iframe>
// 獲取iframe子頁面的window對象
var iframeWindow = document.getElementById('iframe的id').contentWindow;
// 獲取子頁面的元素
var element = iframeWindow.document.getElementById('子頁面中某個元素的id');
// jquery版
var iframeWindow = $('iframe的選擇器').prop('contentWindow');
var element = $(iframeWindow).find('要獲取元素的選擇器');
index是被load的頁面
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<p class="demo">
我是load頁面
</p>
</body>
</html>
test是執(zhí)行l(wèi)oad的頁面
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<p id="p">
</p>
</body>
<script src="jquery.js"></script>
<script>
$("#p").load("index.html",function () {
console.log($(".demo").html())//打印出來
$(".demo").html(
"<span>load出來的頁面 更改內(nèi)容</span>" +
"<span>哈哈哈</span>"
)
})
</script>
</html>