2012-10-25 35 views
0

我想讓我的網頁網址添加頁面高度的參數,這樣我就可以將它設置爲加載在iframe中的頁面上的動態高度。在iframe上設置高度的動態參數src

iframe頁面代碼。

$(document).ready(function() { 
var h = $("#tr").height(); 
var pathname = $(location).attr('href'); 
pathname = $(this) + "&height=" + h; 
}); 

加載到iframe中的頁面。

$(document).ready(function() { 
// parse params in iframe url 

var qs = (function(a) { 
if (a == "") return {}; 
var b = {}; 
for (var i = 0; i < a.length; ++i) 
{ 
    var p=a[i].split('='); 
    if (p.length != 2) continue; 
    b[p[0]] = decodeURIComponent(p[1].replace(/\+/g, " ")); 
} 
    return b; 
})(window.location.search.substr(1).split('&')); 

// get height param 
var myheight = qs["height"] 
// apply css height of the iframe parent 
$("#frame").css("height", myheight) 
}); 

的問題是,在iframe頁面至今沒有加入「page.html中&高度= 800」頁面加載,我試圖找出如何將其設置爲做到這一點可能沒有刷新。

+0

如果您嘗試將參數追加到URL,則應使用正確的語法:'page.html?height = 800'([Query String Doc](http://en.wikipedia.org/wiki/Query_string ))。在這種情況下,@ Diodeus的答案提供了一個更好的解決方案。 – Bogdan

回答

3

使用URL散列,而不是參數。

"page.html#height=800" 

document.location.hash保持 「高度= 800」,其可以解析(或設置)。

您可以在不影響頁面加載的情況下更改散列值。

+0

嗨,感謝您的幫助。 – Blynn