在iframe中,我將src
設置爲包含Silverlight Web部件的頁面,但它不會生成任何錨點元素,但是在Silverlight Web部件上有我們可以點擊,他們將重定向頁面到一個新的網址。將iframe中的Silverlight Web部件鏈接強制爲在父窗口中打開
問題是url始終在iframe而不是父窗口中打開。我嘗試了以下幾件事:
<base target="_search" />
<base target="_top" />
<base target="_parent" />
我的iframe頁面<head></head>
內沒有""
和/
,但沒有奏效。
Silverlight是一個Sharepoint組件,所以我無法更改它或查看代碼以瞭解它如何打開鏈接,所以我無能爲力。
我想知道是否有任何其他暴力方式強制在父窗口中打開鏈接?謝謝你的幫助。
你可以嘗試重新加載每個時間的JavaScript IFRAME元素的含量發生變化的主要頁面上,如果這種方法可行:http://stackoverflow.com/questions/2429045/iframe-src-change-事件檢測 – vorrtex
@vorrtex謝謝你,這個解決方案激發了我一個不是很乾淨的解決方案。在'onload'事件之後,我將'top.window.location.href'的url設置爲iframe的'this.contentWindow.location'。但是,當我更改頂層窗口的loacation時,頁面已經加載,所以對用戶來說不是很好。你有一個想法如何在'onload'之前獲得重定向url?謝謝! – wceo
如果您有權訪問Silverlight Web部件的代碼,那將是可能的。您可以處理單擊事件並調用JavaScript代碼。如果您無法訪問,則可以進行某種逆向工程並重新編譯該webpart。這是唯一的方法。 – vorrtex