2012-08-26 83 views
2

如何在Safari瀏覽器中使用java腳本獲取瀏覽器窗口或活動標籤url?/如何使用java腳本在safari瀏覽器中獲取活動標籤url

我試圖用做 - >

document.url

window.location.href

但無論這個解決方案給了我那麼多的網址。我不知道爲什麼?

此外我搜索了safari.application.browserWindow.activeTab給出當前活動窗口的obj。但我不知道哪些方法是由activeTab類提供的

如果有人知道,PLZ幫助我。提前致謝。

+2

你是什麼意思的「如此多的URL」嗎?您需要顯示兩種您嘗試的方法返回的內容。另外,完整輸入「please」並不會造成傷害。 – Bojangles

+0

顯示此URL以查找解決方案:: http://developer.apple.com/library/safari/#documentation/Tools/Conceptual/SafariExtensionGuide/WorkingwithWindowsandTabs/WorkingwithWindowsandTabs.html#//apple_ref/doc/uid/TP40009977-CH17 -SW1 –

+0

請忽略之前的評論..它顯示不同的網址兩次像facebook.com那麼它顯示原始網址。在每個瀏覽器上加載3次,然後給我們一個3個不同的網址。我想做插件,所以我想要我們輸入爲URL鏈接的確切url。給我解決辦法,我如何從瀏覽器中獲取網址。 http://developer.apple.com/library/safari/#documentation/Tools/Conceptual/SafariExtensionGuide/WorkingwithWindowsandTabs/WorkingwithWindowsandTabs.html#//apple_ref/doc/uid/TP40009977-CH17-SW1 –

回答

2

如果你只是想在當前選項卡中的「頂」文檔的URL,可以使用

safari.application.activeBrowserWindow.activeTab.url 

你的擴展的全球頁面中。

的性質和SafariBrowserTab類的方法在這裏給出:https://developer.apple.com/library/safari/#documentation/UserExperience/Reference/SBrowserTabClassReference/SafariBrowserTab.html#//apple_ref/doc/uid/TP40009793

我從你的問題推斷您的擴展使用一個注入腳本,這是報告中,它正在運行到頁面的URL全球頁面。您的全局頁面正在接收多個URL,因爲注入的腳本不僅在標籤的「頂部」文檔中運行,而且還在其中的每個iframed文檔中運行。

如果你想防止注入腳本iframe內運行,包中的代碼如下語句:

if (window == window.top) { 
    // do stuff 
} 
相關問題