1
A
回答
2
我不確定我是否正確理解你的問題。
我們可以通過調用
iframeEl.contentWindow.document
然後我們可以控制HTML,它裏面的CSS得到的iframe文檔。
要小心同源策略:
我們只能控制iframe中相同的來源主要頁面。
1
你想有一個頁面看起來像這樣(摘要):
<html>
...mypage header...
<iframe src="otherpage.com" class="myclass" />
...mypage footer...
</html>
,對嗎?
使用JavaScript,你可以改變的除外「otherpage.com」的內容什麼。您可以更改iframe
等的類。我建議使用jquery,因爲它提供了簡單的方法來操作HTML DOM。
如果你想改變的iframe內容的外觀,那麼你可以這樣做,但我會強烈建議不要它。如果你決定這樣做,你可以檢查this post解釋如何使用jQuery。你也可以查看this post這是我從這個複製來源:
var frm = frames['frame'].document;
var otherhead = frm.getElementsByTagName("head")[0];
var link = frm.createElement("link");
link.setAttribute("rel", "stylesheet");
link.setAttribute("type", "text/css");
link.setAttribute("href", "style.css");
otherhead.appendChild(link);
我想事情沒有JavaScript的那麼容易。由於安全原因,您無法執行父網站託管的JavaScript以影響iframe
目標。如果你有目標站點在你的控制之下,那麼你可以使用一些跨域的通信(你可以看到this post),但這也不是一個微不足道的任務。
一般來說,操縱iframe
內容意味着您系統的功能取決於您無法控制的其他系統的功能。你明白,當你這樣做時,你對你的系統的依賴性非常大。如果iframe
內容中的內容發生更改,則代碼依賴於它。 我強烈勸阻你遵循這條道路。
希望我幫了忙!
相關問題
- 1. 填充XmlAnyAttribute將在WCF客戶端
- 2. 填充ComboboxList客戶端用ajax
- 3. WCF。創建通用服務合同。從客戶端填充
- 4. Struts 2不會從客戶端填充POJO
- 5. GET REST客戶端上的Android REST客戶端未填充文本字段
- 6. 搞定facebook iFrame客戶端
- 7. YQL從一個客戶端返回空結果,從另一個客戶端填充結果
- 8. WCF客戶端冒充
- 9. 從客戶端
- 10. 當用作popus時,應該在客戶端填充Django表單
- 11. ZK:如何在客戶端使用JavaScript填充zk組合框
- 12. 自動填充文本框的WCF客戶端生存期
- 13. WCF到WPF客戶端 - 填充列表框
- 14. 填充TreeView控件通過TCP客戶端
- 15. grpc Java客戶端請求的填充標題
- 16. 客戶端在運行時填充服務器集合
- 17. 帶有客戶端數據填充的谷歌圖表
- 18. 使用客戶端對象模型Sharepoint 2010填充Treeview
- 19. IdentityServer AspNetIdentity AspNetUserClaims未在客戶端上填充
- 20. 客戶端ADO.NET調用無法填充數據集
- 21. 使用客戶端C填充asp控件#
- 22. 服務器與客戶端表單自動填充
- 23. Ria服務未在客戶端填充複雜屬性
- 24. ASP.NET驗證問題 - 在客戶端動態填充DropDownList
- 25. 使用來自客戶端的內容填充JSP頁面
- 26. 冒充用戶失敗(Java客戶端)
- 27. 填充內容以填充窗口的「客戶區」
- 28. 從iframe填充CRM表單字段
- 29. 檢索iframe值到客戶端頁面
- 30. 添加客戶端iframe的安全性