2012-02-03 91 views
0

我正在使用vb.net和jquery。這是問題。使用jquery我加載不同的鏈接到iframe中的不同文檔。像這樣:從URL鏈接獲取文檔的高度和寬度鏈接到文檔

document.getElementById('iFrame').src = url; 

是否有無論如何,我可以使用此網址獲取文檔的高度和寬度? 當這個iFrame被加載時,我無法獲得高度或寬度。

+0

你在找什麼做什麼呢?如果我的顯示器坐在全屏幕,分辨率爲2000像素x 2000像素,我的文檔尺寸將爲2000像素x 2000像素,與屏幕上顯示的內容大小無關:/ – 2012-02-03 15:26:20

+0

@ChrisKempen:我試圖將數據加載到iFrame和之前我這樣做,我想知道高度和寬度,所以我可以調整,並沒有看到任何滾動條。 – NoviceMe 2012-02-03 15:28:29

+0

正如呃指出的那樣,做你想做的事情的問題是它只能在固定寬度的站點上工作。靈活的寬度網站,再次變得更加普遍,幾乎總是無論大小如何,iFrame的寬度。如果您知道您要加載的網站就是這種情況,那麼您還需要克服xss問題才能訪問iFrame。您最好找到另一種解決方案,比如在自己周圍使用固定寬度(目前桌面的標準大約爲850-900像素)。 – Donamite 2012-02-03 21:41:53

回答

1

使用jQuery,你可以試試這個。只有當父級和iframe位於同一個域中時,纔可以訪問iframe元素。

$("iframe").load(function(){ 

    var $body = $(this).contents().find("body") 
    var height = $body.height(); 
    var width = $body.width(); 

    //Using these values you can adjust the iframe height and widht. 

}).attr("src", url); 
+0

@ShankarSangoli:這不工作我得到:錯誤:權限被拒絕 – NoviceMe 2012-02-03 15:36:51

+0

我在我的回答中提到的iframe應該在同一個域中訪問其元素。 – ShankarSangoli 2012-02-03 15:37:22

-1

最好的解決辦法,我發現在jQuery的自動改變框架的高度:

$('#frmForm').load(function() { 
    var h = $('#frmForm').contents().find("body").height(); 
    $('#frmForm').css('height', h + 'px'); 
}); 
+0

請用中文填寫完整的答案 – anderssonola 2013-06-04 14:33:08

+0

請將您的答案翻譯成英文。 – 2013-06-04 14:33:28