2009-01-16 55 views
0

我想獲得一個iframe B與站點A溝通。 我已經搜索和搜索,我讀的每一件事情說,如果他們是不同的域(iframe src是從一個子域)。超越iframe

我想溝通,因爲我的公司在其網頁上有廣告,並且需要每X分鐘刷新一次。這是正常的,如果它是一個正常的添加,但一些增加擴展。就像我已經添加了300x250開始,然後達到800x300。 我想與iframe進行通信以瞭解add何時會擴展,但它似乎不是一種方法。有沒有辦法讓添加超出iframe的初始大小?

如果添加的是300x250,iframe也會有300x250,但是當add擴展時它會被截斷,所以我確實需要讓iframe擴展也可以讓add增加超出iframe的大小。

任何人都知道如何做到這一點或有一些教程,顯示如何與iframe進行一些基本的溝通。

注意:有些網站也提供了一個完全不同的域名,所以如果有人知道如何讓它超出iframe,那將是非常好的。

感謝

回答

0

有一種方法可以使用iframe進行跨域通信,在Resizing an Iframe based on content的答案中描述。

許多廣告投放公司通過iframe在您的網站上投放橫幅廣告,並使用上述答案中概述的技術來確保iframe可以擴展至廣告素材的全部所需尺寸。

1

你不能越過邊界的iframe出於安全原因,這將是簡單的竊取你的登錄憑據任何網站,如果這將是可能的。

但是,您可以製作服務器端代理,它將每個查詢從iframe重定向到廣告服務器。這樣,你的iframe實際上可能在同一個域(或子域)有源代碼

+0

這是一個擁有iframe的頁面 – AntonioCS 2009-01-16 17:47:24

2

如果你想要兩個iframe進行通信,你說一個是在不同的子域,但相同的頂級域,你可以做幀間腳本。見http://ajaxian.com/archives/how-to-make-xmlhttprequest-calls-to-another-server-in-your-domain

訣竅是讓頁面A和B都設置

document.domain = 'SameTopLevelDomain.com'; 

,然後瀏覽器將讓網頁通信(從其他通話功能如搶數據等)。

但是,如果這兩個頁面完全位於不同的域中,則必須採用服務器端代理方法,如前所述。