我正在使用addon-SDK方法開發Firefox的插件。我想知道,無論如何,只要點擊該contentURL中的鏈接,就可以將該面板中顯示的html(contentURL)更改爲新的網頁。提前致謝。在面板中顯示一個新的html /網頁
1
A
回答
1
維涅什這裏的接收網址點擊代碼:
https://developer.mozilla.org/en-US/Add-ons/SDK/High-Level_APIs/panel#Scripting_panel_content
var myScript = "window.addEventListener('click', function(event) {" +
" var t = event.target;" +
" if (t.nodeName == 'A')" +
" self.port.emit('click-link', t.toString());" +
"}, false);"
var panel = require("sdk/panel").Panel({
contentURL: "http://www.bbc.co.uk/mobile/index.html",
contentScript: myScript
});
panel.port.on("click-link", function(url) {
console.log(url);
});
panel.show();
,那麼你可以更改爲,而不是執行console.log(URL),你可以把它找到你的面板和將其iframes位置更改爲該網址。我不知道如何用sdk方法做到這一點,也許別人可以分享。我會嘗試這樣做,雖然:
panel.port.on("click-link", function(url) {
panel.contentURL = url;
});
編輯: panel.contentURL = url
可能無法正常工作,所以你必須做這樣的:
const { getMostRecentBrowserWindow } = require('sdk/window/utils');
var aXULBrowser = getMostRecentBrowserWindow();
aXULBrowser.getElementById('ID OF YOUR PANEL, probably same as id to your widget here').getElementsByTagName('iframe').contentWindow.location = url;
+0
@Vignesh如果'panel.contentURL = url'不起作用,那麼你可以做我上面添加的東西。如果你無法弄清楚面板的ID,可以使用DOM Insepctor和Elment Inspector插件,然後右鍵單擊面板,它會在檢查器中打開它,然後可以輕鬆地看到面板ID。 – Noitidart 2014-12-22 20:13:21
相關問題
- 1. 在新頁面中顯示一個網頁的特定div
- 2. 顯示一個HTML頁面
- 3. 在servlet中顯示新的HTML頁面
- 4. 顯示另一個HTML頁面中的iframe的父HTML頁面
- 5. 在另一個HTML頁面中顯示HTML頁面的一部分
- 6. 面向網絡應用的另一個面板顯示面板
- 7. 在html頁面顯示網格?
- 8. WordPress的頁面模板更新沒有在網站上顯示,除非我新建一個頁面
- 9. 在html頁面中顯示幾個PDF
- 10. 如何在MVC的另一個頁面中顯示html頁面的一部分
- 11. 多個下拉值不會在新的HTML頁面中顯示
- 12. 顯示一個沒有頁面模板的Drupal頁面
- 13. 在html頁面中顯示html代碼
- 14. HTML /在HTML頁面中顯示圖像
- 15. 在另一個HTML頁面上顯示HTML值的JavaScript
- 16. 在html頁面上顯示一個面板而不影響內容
- 17. 在自己的頁面模板中一次顯示多個頁面
- 18. Facebook網頁插件不會在HTML頁面中顯示
- 19. 顯示html頁面?
- 20. jQuery顯示在HTML頁面
- 21. 如何從url中顯示html頁面中的網頁?
- 22. 的Joomla網站顯示頁面刷新
- 23. WordPress的:在一個頁面上顯示多個靜態頁面(單頁網站)
- 24. 在GWT面板中顯示HTML
- 25. 在一個頁面上顯示兩個網頁
- 26. 在HTML頁面上顯示三個XML
- 27. 如何在更新面板中顯示html輸入字段
- 28. Modx:在一個模板中顯示所有頁面
- 29. 在UIWebView中顯示一個網頁
- 30. 模態彈出面板顯示,同時刷新網頁
您可能需要訪問的[問]對於建議如何改善你的問題並避免投票。 – ochi 2014-12-19 06:07:28
@Ochi這是一個很好的問題。 Vignesh是有一種方式。我很久以前就做過了,但是已經脫離了sdk循環,因此可能有一些sdk開發人員可以與您分享的推薦方式。 – Noitidart 2014-12-19 07:31:10
也許這可以幫助回答你的問題:http://stackoverflow.com/questions/16073930/how-do-i-display-a-link-in-a-panel-on-my-firefox-extension-using-the -add-on-sdk – ochi 2014-12-19 07:40:29