Dropbox和Box选择器不能在默认的Chrome页面上工作
Dropbox and Box choosers don't work on default Chrome page
我有一个Chrome扩展AngularJS应用程序,它实现了Dropbox和Box文件选择器api。扩展通过内容脚本在页面上下文中运行。
一切都很好,除了在默认的"新选项卡"页面上运行时——选择器打开,你可以选择文件,但点击选择器上的按钮不会发送任何响应,选择器弹出窗口只是坐在那里。它只有在你导航到某个地方(任何地方)后才开始工作,刷新默认页面没有帮助。这是我的代码,但它是标准的每个Dropbox和Box api:
Dropbox:
var dropboxOptions = {
success: function(files) {
$scope.$apply(function() {
for (var i = 0; i < files.length; i++)
$scope.attachments.push({"link" : files[i].link, "name" : files[i].name, "provider" : "DROPBOX"});
});
},
cancel: function() {},
multiselect: true
};
$scope.dropBoxAttachment = function() {
Dropbox.choose(dropboxOptions);
};
框:
var boxOptions = {'clientId': MY_CLIENT_ID, 'linkType': 'shared', 'multiselect': true};
var boxSelect = new BoxSelect(boxOptions);
boxSelect.success(function(response) {
$scope.$apply(function() {
for (var i = 0; i < response.length; i++)
$scope.attachments.push({"link" : response[i].url, "name" : response[i].name, "provider" : "BOX"});
});
boxSelect.closePopup();
});
boxSelect.cancel(function() {
boxSelect.closePopup();
});
$scope.boxAttachment = function() {
boxSelect.launchPopup();
};
文件选择器使用窗口。postMessage在文件选择器窗口和第三方页面之间传递消息。Chrome扩展需要一个不同的方法来传递消息。https://developer.chrome.com/extensions/messaging。
相关文章:
- JS可以在Chrome中工作,但不能在Firefox中工作
- jQuery Datepicker可以在Safari中工作,但不能在FF或Chrome中工作
- Javascript的某些部分在Chrome中不起作用,但在其他浏览器中可以完美工作
- javascript window.open将无法在Chrome控制台上工作
- 如何编写在Chrome和IE中正常工作的JavaScript
- 只有当Javascript控制台在chrome上打开时,Javascript才能工作
- NaN:Firefox和IE中的NaN,CHROME工作正常
- jquery日期转换chrome工作,但IE和firefox't
- Chrome工作区无法使用源地图和Javascript
- 数组比较在Chrome工作,但不与Chrome IPAD
- 如何获得一个值从选项时选择(此代码为chrome工作)
- HTML表单与javascript得到"在IE,但在Chrome工作
- 简单的脚本与onclick事件在Chrome工作良好,但在Firefox失败
- 在Firefox剑道按钮文本不改变,而在IE和Chrome工作
- Ajax GIF加载器不工作在IE和Firefox(最新),但在Chrome工作
- Firefox返回TypeError: document.getElementById(..)为空,但Chrome工作正
- 纯Javascript: onClick切换行/图像:Firefox/Chrome -工作:IE -不工作
- 为什么if (condition) {statements} else返回;"在Chrome工作
- 我怎么能得到jsFiddle在Chrome工作
- 模态对话框与Mozilla工作,但不与Chrome工作