我有一个外部应用程序,我正在尝试将其加载到chrome.window
panel
中。有点像Google Hangouts Chrome扩展程序。
问题是panel
没有运行任何javascript。如果我更改 chrome.window 的类型以popup
一切正常。
可能是什么问题?
谢谢!
编辑
这是我在后台运行的代码.js
chrome.windows.create({url: "https://myapp.com", type: 'panel'});
如果我将其更改为:
chrome.windows.create({url: "https://myapp.com", type: 'popup'});
位于 https://myapp.com 的 javascript 效果很好,但当type
设置为 panel
时则不然。
这是我 mayapp.com 上运行的代码:
<script src="//code.jquery.com/jquery-1.9.1.min.js"></script>
<script>
$(document).ready( function() {
alert('Running jQuery...');
});
</script>
我不太确定为什么(所以知识渊博的人可以对此有所了解),但是某些"Web功能"在面板窗口中被禁用。这可能是出于安全原因,也可能是由于底层操作系统负责 UI 的事实(我只是在这里推测)。
这些功能包括JavaScript弹出框(即 alert
、confirm
、prompt
)。
因此,您的jQuery工作正常,例如尝试将侦听器替换为:
$(document).ready( function() {
$(document.body).text('Running jQuery...');
});
我不知道这是否相关,但Chrome打包应用程序也是如此。这是应用程序中禁用的 Web 功能的列表。
我并不是说面板上也禁用了相同的功能,我只是将其作为提示。