如果我們想要在一個(gè)網(wǎng)頁(yè)中,通過jquery跨域獲取另一個(gè)網(wǎng)頁(yè)的高度,該怎么實(shí)現(xiàn)呢?
首先,我們需要了解什么是跨域。跨域是指在一個(gè)網(wǎng)頁(yè)中,獲取到另一個(gè)網(wǎng)頁(yè)中的數(shù)據(jù)或資源。由于安全限制,瀏覽器不允許直接在一個(gè)網(wǎng)頁(yè)中訪問另一個(gè)網(wǎng)頁(yè)中的內(nèi)容。因此,我們需要使用一些技巧來實(shí)現(xiàn)跨域。
一般來說,我們可以使用ajax或者jsonp來跨域獲取數(shù)據(jù)。但是,這兩種方式都無法直接獲取另一個(gè)網(wǎng)頁(yè)的高度。因此,我們需要使用另外一種方式,那就是嵌入一個(gè)iframe來獲取另一個(gè)網(wǎng)頁(yè)的高度。
具體實(shí)現(xiàn)步驟如下:
// 創(chuàng)建一個(gè)iframe var iframe = document.createElement('iframe'); // 設(shè)置iframe的src屬性為我們要獲取高度的網(wǎng)頁(yè) iframe.src = 'http://www.example.com'; // 將iframe隱藏起來 iframe.style.display = 'none'; // 將iframe添加到網(wǎng)頁(yè)中 document.body.appendChild(iframe); // 等待iframe加載完畢后執(zhí)行獲取高度的代碼 $(iframe).load(function() { // 獲取iframe中文檔的高度 var height = $(this).contents().height(); // 打印出高度 console.log(height); });
以上代碼中,我們創(chuàng)建了一個(gè)隱藏的iframe,并將其添加到了網(wǎng)頁(yè)中。然后,我們等待iframe加載完畢后,通過jquery獲取iframe中文檔的高度,并將其打印出來。