我在html頁面中有一個iFrame myPage.html我在其中顯示另一頁otherPage.html。 otherPage.html是一個複雜的頁面,有很多元素。我想在iFrame中只顯示一個div。所有其他人應該保持隱藏。我怎樣才能做到這一點?在iFrame中只顯示一個div
而不是iFrame,我試圖在jQuery中使用.load()函數。但由於某種原因,頁面無法加載。 otherPage.html由IIS服務器提供,頁面由純粹的Javascript構建。我不知道爲什麼在使用load()函數時沒有加載任何東西。
我該如何去實現這一目標?
更新: 這裏有一些澄清: 我試圖用.load()函數myPage.html下。無論如何,在擺弄後,我發現以下工作: 對於我想要展示的div,我隱藏了它的所有兄弟,並且隱藏了其父節點的所有兄弟。下面的jQuery的聲明似乎要做到這一點:。。。。
$( 「#myFrame」)的內容()找到( 「#chart1」)顯示()parentsUntil( '主體')andSelf()。 。兄弟姐妹()隱藏();
我現在只有一個問題。當我做到以下幾點:
- 負載myPage.html下在Firefox(它還加載otherPage.html在 的iframe)
- 手動打開Firebug,並鍵入
。。。。。$( 「#myFrame」)的內容()找到( 「#chart1」)顯示()parentsUntil( '主體')andSelf()兄弟姐妹()隱藏()。
它似乎隱藏了一切。
但後來我想自動化它。換句話說,當我加載myPage.html我希望它加載iFrame的內容。一旦iFrame內容被加載,我想運行這個腳本:
$(「#myFrame」)。contents()。find(「#chart1」)。show()。parentsUntil('body') .andSelf()的兄弟姐妹()隱藏()。;
我不能得到這個工作。到目前爲止,我已經試過這兩種方法:
$(document).ready(function() {
$("#myFrame").ready(function() {
$("#myFrame").contents().find("#chart1").show().parentsUntil('body').andSelf().siblings().hide();
});
});
我也曾嘗試使用
$("#myFrame").load(function() {
代替。但是在這兩種情況下,腳本都不會隱藏其他元素。因爲,當我在控制檯中手動使用腳本時,腳本會起作用,所以我假設它在加載所有元素之前運行。請給我你的想法。內嵌框架內
最初並非如此。但現在它與* myPage.html *在同一個文件夾中。和兩者都從IIS提供。 –
可以請你發佈一些你已經嘗試過的代碼。 –
我不能發佈大部分代碼,因爲它的機密性。我會盡可能地發佈信息。 –