2013-11-15 29 views
0

我在擴展程序中有一個iframe。 iFrame幫助用戶登錄帳戶。 一旦用戶登錄並在關閉後再次單擊該分機。 iframe再次加載並且用戶註銷。Chrome中的iFrame每次點擊擴展程序時都會加載擴展程序

目前,iframe直接嵌入在html中。我也試着用JS附加它,但即使這樣也沒有幫助。

編輯: 我的清單:

"permissions": ["tabs", "http://*/*", "https://*/*","activeTab"], 
    "content_scripts":[ 
    { 
     "matches":["http://*/*", "https://*/*"], 
     "js":["data/js/popup.js","data/js/jquery-1.10.2.min.js"] 
    } 
    ], 

的popup.html:

<div class="frame"> 
     <iframe id="Receiver" width="100%" height="250px" frameborder="0" src="http://abc.url/login"></iframe> 
    </div> 

鏈接(IFRAME)的登錄頁面,讓用戶登錄到自己的帳戶。我沒有任何直接訪問該登錄頁面,但如果需要的東西讓我知道。

發佈: 1)點擊擴展需要很長時間來顯示popup.html:當搜索了很多,我知道,直到iframe被完全加載擴展沒有彈出的面板。
2)當用戶登錄到他的賬戶,並通過點擊瀏覽器的其他地方訪問另一個頁面或關閉擴展。然後再次點擊擴展名,擴展名再次加載框架/需要很長時間顯示HTML頁面,並且用戶也被註銷。

我想要類似GroupDocs查看器擴展名,其中一旦用戶登錄,直到他按下'註銷',他沒有註銷。

+0

又是什麼問題? – gkalpak

+0

@ExpertSystem:每次點擊擴展時加載iframe,以便用戶註銷。 – ignVinayak

+0

你真的需要提供更多細節。例如。 「負載」是什麼意思?它在哪裏加載?什麼是「點擊」? iframe做了什麼(即它如何「幫助用戶登錄帳戶」)?這句話意味着什麼:「一旦用戶登錄並在關閉後再次點擊擴展名。」 ?什麼是您的擴展結構(後臺頁面?內容腳本?彈出窗口?其他視圖?)?你的清單是什麼樣的? – gkalpak

回答

0

如果我正確地理解了這個問題,加載http://abc.url/login會記錄用戶是否已經登錄。因此,每次打開彈出窗口時,都會加載iframe,並且用戶被有效註銷。

可能的解決方案:

  1. 嘗試檢測,如果用戶已經登錄,然後纔在iframe添加到DOM(通過JS)。例如。如果存在只能由登錄用戶訪問的頁面(例如http://abc.url/account),請嘗試訪問此頁面並查看是否出現錯誤。 (確切的設置取決於服務器處理未經授權的請求的方式。)

  2. 默認情況下不加載iframe,但有一個鏈接或按鈕,用戶必須點擊才能打開日誌在iframe中。

+0

ok第二種解決方案是不可能的......但是,我會嘗試第一個。:)謝謝 – ignVinayak

+0

@IgnatiuzVinayak:如果你認爲這是一個nswer是有用的,並解決您的問題,請** [標記爲「接受」](http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work)**,如此未來面臨類似問題的用戶將能夠輕鬆發現。 – gkalpak

+0

沒有任何解決方案可以解決我的問題。我仍然面臨同樣的問題。 – ignVinayak

相關問題