我正在使用 Erik Vold 的工具栏按钮。我有一个固定在上面的面板。在面板中呈现的 html 静态页面上单击其中一个链接时,我需要在同一面板中显示其他内容。
我正在尝试使用端口 API 在插件代码和 html 静态页面之间传递消息。在监听某个事件时,我想更改面板的 contentURL 字段:
var myScript = "window.addEventListener('click', function(event) {" +
" var t = event.target;" +
" if (t.nodeName == 'A')" +
" self.port.emit('click-link', t.id);" +
"}, false);"
var mainPanel = require("panel").Panel({
width: 200,
height: 200,
contentURL: require("self").data.url("appList.html"),
contentScript: myScript
});
mainPanel.port.on("click-link", function(appName) {
if(appName=='app1'){
//mainPanel.resize(700,500); --works
mainPanel.contentURL="http://www.some-server/app1.html"; --fails
}
if(appName=='app2')
...
});
mainPanel.resize() 可以很好地调整面板的大小。是否有类似的方法来更改面板的 contentURL?