我在一个 SP2010 可视 webpart 中有下面的 javascript 代码,它适用于谷歌浏览器,但不适用于 IE9。这是一个令人担忧的问题,因为 Dropbox 选择器网站说 addEventListener 不适用于 IE8 或更低版本。
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="DropboxControlUserControl.ascx.cs" Inherits="DropBoxWebPart.DropboxControl.DropboxControlUserControl" %>
<script type="text/javascript" src="https://www.dropbox.com/static/api/1/dropins.js" id="dropboxjs" data-app-key="xxxxxxxxxxxxxxx"></script>
<input type="dropbox-chooser" name="selected-file" id="db-chooser"/>
<script type="text/javascript">
document.getElementById("db-chooser").addEventListener("DbxChooserSuccess",
function(e) {
window.open(e.files[0].link)
}, false);
</script>
我尝试使用 Dropbox.chooser(options) 函数来克服这个问题,但我不确定将代码放在哪里或从哪里调用函数。我是否需要从代码隐藏中调用它,因为我试图将它放在这样的脚本中,并且还尝试使用 document.getElementById("db-chooser").on 或 .attachevent 并且无法使其工作。
<script type="text/javascript">
Dropbox.chooser(options);
options = {
// Required. Called when a user selects an item in the Chooser.
success: function(files) {
alert("Here's the file link:" + files[0].link)
},
// Optional. Called when the user closes the dialog without selecting a file
// and does not include any parameters.
cancel: function() {
},
linkType: "preview" or "direct",
extensions: ['.pdf', '.doc', '.docx'],
};
</script>