2009-06-30 78 views
4

我們有客戶在我們提供的服務器上創建小型Intranet應用程序。這些服務器還包含我們創建的各種(基於windows/.net的)系統。在網頁中嵌入Web Widget(?)

我們需要爲我們的客戶提供一個「單行」的代碼片段,使他們能夠將功能嵌入到他們的網頁中。與Google廣告嵌入網站時的工作方式類似。稍有不同的是,我們需要每5秒左右更新一次。我們將創建幾個這樣的「小部件」,供他們放置在他們的頁面中。

我們所有的研發都是在.Net網站上,所以我寧願選擇一些方面,但我對任何東西都是開放的。早期研究指向IFrame,可能使用Ajax,JavaScript,JQuery和Web服務,或使用IHttpHandler通過「Document.Write」(like this)返回HTML。

建議?

回答

1

簡而言之,Iframes很容易,因爲它們消除了與客戶網站可能產生的任何衝突。這非常重要,除非您還管理客戶端的網站,以便控制要插入窗口小部件的環境。

否則,您將小部件代碼直接嵌入客戶端網站(不使用iframe)的情況可能會導致與客戶端的HTML,CSS或Javascript發生衝突。你可以寫你的小部件代碼,所以它不會衝突,但你通常不能依靠他們的網頁代碼。所需要的只是在您的客戶端網站上寫入的內容不足以導致您的嵌入式小部件出現問題。 CSS是簡單的例子..假設您的客戶在他們的樣式像一些愚蠢的:

div { background-color: red; } 

...除非你使用更具體的選擇在你的widget中使用的所有div的指定背景屬性,現在他們是紅色的。

我認爲執行小部件的最佳方法是爲您的客戶端提供一個在腳本URL中傳遞客戶端ID的外部腳本引用。你的腳本從document.write()開始 - Iframe--這樣你就可以控制你的小部件的每個方面(包括iframe),而且你的客戶端不需要做任何改變。