2011-05-31 81 views
1

我正在開發FF擴展,它在第三方網站上顯示用戶特定的信息。用戶需要登錄到我的Drupal網站。我使用跨域驗證的jQuery.ajax()來檢查登錄狀態。如果用戶未登錄,FF擴展將打開一個彈出窗口(window.open()),顯示Drupal登錄/註冊/密碼丟失頁面(/ user/login)。通過我的firefox-addon登錄到我的drupal網站

現在我希望這個窗口關閉,並且一旦登錄(註冊/密碼請求)成功,FF繼續進行。現在我迷路了......我該怎麼做?我知道如何關閉從我的FF插件(window.close())彈出,但我不知道如何告訴插件,何時做到這一點。我想到了輪詢登錄狀態。但那看起來很笨拙,不是嗎? 我也嘗試將成功登錄(登錄目標模塊)後的drupal頁面重定向到自閉頁面,但在較新的瀏覽器中,window.close()僅適用於使用相同腳本創建的窗口。然後,我仍然需要找到一種方法來告訴FF插件繼續。

其他人怎麼解決這個問題? 在此先感謝您的幫助!

+1

您可能還需要檢查出的Drupal問答測試版網站。使用它的人越多,它越有可能通過測試:http://drupal.stackexchange.com – 2011-05-31 23:22:43

+0

好的,謝謝! – modoq 2011-05-31 23:35:18

+0

我不認爲drupal.stackexchange.com會提出這個問題,因爲它與FF-extension比Drupal更相關。 – 2011-06-01 06:32:45

回答

1

我不知道Firefox的擴展,但你可能會聽到onload事件在您的彈出window檢測到新的頁面加載。如果成功登錄的目標頁面包含某些可從您的擴展中訪問的標誌,則可以從onload處理程序中查詢此標誌。

追趕的onload從您的擴展似乎是可行的,看到firefox extension. How to catch onload event?

+0

關於onload和ff-extensions的文檔似乎爲我提供了很多學習機會。所以我決定現在堅持投票。不管怎麼說,還是要謝謝你。 – modoq 2011-06-02 16:44:41