我正在构建iOS phonegap(v 1.3)应用。在页面上,我给了一个按钮来下载.pptx文件。
<a href="'+downloadUrl+'" target="_blank">Download file</a>
按钮的href指向我网站上的下载链接。因此,点击链接应自动下载文件
发生的事情是,点击链接后,文件会被下载,但它会在同一视图中打开。 pptx的所有幻灯片都在另一个下方,它们占据全屏。除了杀死我的应用程序并重新启动之外,无法返回我的应用程序。我尝试了target =“_ blank”,“_ tab”,没有任何效果,一切都会导致屏幕上的幻灯片出现类似行为,我无法回到我的应用程序。
我可以做一些事情,以便.pptx文件在另一个视图中打开,或者更好,不打开,只是保存(如在android中)?请帮助。
答案 0 :(得分:2)
我想你可以看看这个插件
答案 1 :(得分:1)
要下载和显示文件,请按照示例代码操作。
在index.html
中的</head>
标记上方添加指定代码
<script type="text/javascript" charset="utf-8">
// Wait for Cordova to load
document.addEventListener("deviceready", onDeviceReady, false);
// Cordova is ready
function onDeviceReady() {
alert("Going to start download");
downloadFile();
}
function downloadFile(){
window.requestFileSystem(
LocalFileSystem.PERSISTENT, 0,
function onFileSystemSuccess(fileSystem) {
fileSystem.root.getFile(
"dummy.html", {create: true, exclusive: false},
function gotFileEntry(fileEntry){
var sPath = fileEntry.fullPath.replace("dummy.html","");
var fileTransfer = new FileTransfer();
fileEntry.remove();
fileTransfer.download(
"http://www.w3.org/2011/web-apps-ws/papers/Nitobi.pdf",
sPath + "theFile.pdf",
function(theFile) {
console.log("download complete: " + theFile.toURI());
showLink(theFile.toURI());
},
function(error) {
console.log("download error source " + error.source);
console.log("download error target " + error.target);
console.log("upload error code: " + error.code);
}
);
},
fail);
},
fail);
}
function showLink(url){
alert(url);
var divEl = document.getElementById("deviceready");
var aElem = document.createElement("a");
aElem.setAttribute("target", "_blank");
aElem.setAttribute("href", url);
aElem.appendChild(document.createTextNode("Ready! Click To Open."))
divEl.appendChild(aElem);
}
function fail(evt) {
console.log(evt.target.error.code);
}
</script>
参考: - Blog Post