2012-03-22 39 views
2

當創建一個打開「假彈窗」(類似於亞馬遜的願望清單,pinterest等)的書籤時,爲什麼人們不使用iframe而不是生成所有元素並從中刪除所有頁面樣式?至於我可以告訴大家:bookmarklet彈出:通過JS或iframe生成div?

的iframe優點:

  • 可以使用瀏覽器機制記住密碼等
  • 沒有第三方cookie的問題
  • 表單提交簡單得多
  • 少得多javascript,可能會被頁面上的腳本等破壞

iframe缺點:

  • 不能自動關閉彈出窗口(書籤無法讀取iframe中的內容)
  • 任何網頁腳本必須的iframe之外運行,那麼結果通過了通過GET參數(iframe中無法讀取網頁內容)
  • ???

在我看來,如果你不需要自動關閉的東西,iframe將是更好的選擇。但似乎沒有人這樣做。爲什麼不?

+0

通過bookmarklet創建的iframe [無法讀取](),父文檔的DOM,這是罷工三。 – 2012-07-27 00:37:42

+0

腳本可以做解析,然後通過獲取參數傳遞給iframe,不是嗎? – Mala 2012-08-02 00:22:09

+0

是的,這是行得通的,但是iframe中的任何事件仍然對父文檔沒有影響。 – 2012-08-02 01:41:44

回答

0

這裏的原因:

  • 通過書籤,創建一個iFrame無法讀取父文檔

  • 的iframe內的任何事件仍然會對父文檔沒有任何影響的DOM