我正在尋找獲取Firefox中選定選項卡的當前網址,我有一個針對contentURL的Firefox SDK面板,並且我一直在使用Javascript嘗試獲取當前網址;獲取當前URL
window.content.location.href
不過遺憾的是它不除非IM工作我的contentURL頁面上的任何其他網頁,它什麼也不顯示。
謝謝!
我正在尋找獲取Firefox中選定選項卡的當前網址,我有一個針對contentURL的Firefox SDK面板,並且我一直在使用Javascript嘗試獲取當前網址;獲取當前URL
window.content.location.href
不過遺憾的是它不除非IM工作我的contentURL頁面上的任何其他網頁,它什麼也不顯示。
謝謝!
你可以得到URL這樣
var url = require('sdk/tabs').activeTab.url;
這隻有裏面的附加代碼,不在裏面內容腳本 。有關區別,請參見this guide。
如果要從內容腳本中觸發查找和/或想要在內容腳本中使用URL,則必須使用communicate using "port"。
下面是一個示例,其中當單擊某個按鈕時,當前選項卡的url將顯示在面板中。
LIB/main.js(附加代碼):
const data = require('sdk/self').data;
var panel = require('sdk/panel').Panel({
contentURL: data.url('panel.html'),
contentScriptFile: data.url('panel.js')
});
panel.port.on('get url', function() {
panel.port.emit('return url', require('sdk/tabs').activeTab.url);
});
panel.show();
數據/ panel.js(內容腳本):
var button = document.getElementById('button');
var urlspan = document.getElementById('url');
button.addEventListener('click', function() {
self.port.emit('get url');
});
self.port.on('return url', function (url) {
urlspan.textContent = url;
});
數據/ panel.html:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>panel</title>
</head>
<body>
<button id="button">
Get Current URL
</button>
<br>
Current URL: <span id="url"></span>
</body>
</html>
在JavaScript:
window.location.href
在PHP中:
$_SERVER["REQUEST_URI"]
感謝您的快速回復,我試了兩個,他們只返回SDK面板的內容URL – sparkones 2013-04-21 16:27:10
Okey,可能這可以幫助你:http://stackoverflow.com/questions/115 94576/getting-current-browser-url-in-firefox-addon – MrRP 2013-04-21 16:32:43
我已經搜索了所有的stackoverflow和即時通訊仍然無法解決的問題,我唯一幸運的是window.content.location.href和它只適用於我的contentURL頁面,一旦我在另一個頁面上嘗試它,它不會提醒我任何事情。 – sparkones 2013-04-21 21:26:52
單擊某個按鈕時是否可以將其附加到ContentURL?對不起,我不太瞭解編寫sdk – sparkones 2013-04-23 03:11:20
向ContentURL追加什麼?你的意思是什麼樣的按鈕?你的面板裏面? – 2013-04-23 14:15:49
是的,我很想在html表單上獲得一個按鈕「獲取當前URL」,那麼它會得到選定的標籤url並將其附加到url前「www.domain.com/geturl.php?url=CurrentURL」 – sparkones 2013-04-23 23:21:43