我想使用Android中的phonegap InAppBrowser显示外部PDF,但无法正常工作。
这是我的JS代码:
<script>
function openPDF() {
var ref = window.open('http://www.i-drain.net/userfiles/file/einbauanleitung_iboard.pdf', '_blank', 'location=yes');
ref.addEventListener('loadstart', function(event) { alert('start: ' + event.url); });
ref.addEventListener('loadstop', function(event) { alert('stop: ' + event.url); });
ref.addEventListener('loaderror', function(event) { alert('error: ' + event.message); });
ref.addEventListener('exit', function(event) { alert(event.type); });
}
</script>
我想在单击图像后打开pdf,所以我使用以下html代码:
<a href="#" onclick="openPDF()" >
<img src="images/button.png">
</a>
对于每个被这个问题困扰的人,我终于找到了它们:
HTML 5对象标记: 不起作用
嵌入式标签: 不起作用
childBrowser插件: 我认为它可以工作,但是它是针对2.0.0版本设计的。因此,您会遇到很多错误,所以我没有使它起作用。
Phonegap InAppViewer: 如果您这样使用它:
window.open('http://www.example.com/test.pdf', '_blank', 'location=yes')
它不会工作。InAppViewer无法打开PDF,该PDF是外部存储还是本地存储都没有关系。
到目前为止,我的解决方案(不是实际的想法):
您可以使用_system调用window函数。像那样:
window.open('http://www.example.com/test.pdf', '_system', 'location=yes')
这将在常规浏览器中打开PDF并下载。下载后,它将询问是否应使用PDF查看器打开它。但是您必须返回到您的应用,然后再将其打开。
另一种可能性是,您可以使用Phonegap Filesystem API将其下载到sdcard中,如下所示:
var fileTransfer = new FileTransfer();
fileTransfer.download(
"http://developer.android.com/assets/images/home/ics-android.png",
"file://sdcard/ics-android.png",
function(entry) {
alert("download complete: " + entry.fullPath);
},
function(error) {
alert("download error source " + error.source);
alert("download error target " + error.target);
alert("upload error code" + error.code);
});
我发现的最后一件事是,使用Google docs / drive将其与链接到google docs的InAppViewer一起打开:
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
window.open('https://docs.google.com/viewer?url=http://www.example.com/test.pdf&embedded=true', '_blank', 'location=yes');
ref = window.open('index.html', '_self');
}
因此,即使您更改了pdf文件,它仍然可以使用
希望本摘要有助于您节省时间。如果还有其他解决方案,请告诉我
使用表情面板增加 mBot 的可玩性。 表情面板可通过 RJ25 线连接到主板上对应的接口。 坐标 如上图所示,表情面板以左上角为坐标 0 点, x ,y 的方向如箭头示意。参数有效范围: x: -15 ~ 15 y: -7 ~ 7 1. 表情面板(接口1)显示图案()持续()秒 在指定接口连接的表情面板显示指定图案,持续一段时间后熄灭。 示例: 按下空格键,mBot 的外接表情面板会显示指定图案
Composite Images watermark(['/img/shepherd.jpg', '/img/logo.png']) .image(watermark.image.lowerRight()) .then(function (img) { document.getElementById('composite-image').appendChild(img); }); Al
在 MShowInstDetails show ShowUnInstDetails show 下面添加以下代码: ShowInstDetails hide ;安装过程,该项默认为show,hide表示不显示安装信息,点击显示按钮后显示。 ShowUnInstDetails hide ;卸载过程,该项默认为show,hide表示不显示安装信息,点击显示按钮后显示。 效果如图:
void display(string template [, string cache_id [, string compile_id]]) This displays the template. Supply a valid template resource type and path. As an optional second parameter, you can pass a cach
显示文字或者表情。 用法 Your browser does not support the video tag. 案例:保险箱 说明:使用旋钮制作密码器,通过显示屏显示密码。输入密码正确后指示灯亮起,按下按钮保险箱被开启。 所需模块:电源、蓝牙模块、按钮、旋钮、显示屏、双舵机驱动、舵机驱动包、转接线10cm。
显示屏模块能够显示输入值。你也可以通过编程自定义要显示的信息,如数字、标点和表情信息等。 净重量:12.4g 体积:24×48×14mm 参数 工作电压:DC 5V 抗跌落能力:1.5m 工作温度:-10℃~55℃ 工作湿度:<95% 特点 支持图像、表情、ASCII编码字符等多种输出。
LED点阵屏幕 小程的屏幕是由128颗LED组成的点阵,可以显示英文字符、数字与图案。 坐标示意图 如上图所示,表情面板以左上角为坐标 0 点, x ,y 的方向如箭头示意。参数有效范围: x:-15 ~ 15 y:-7 ~ 7 1. 显示图案()()秒 在小程的屏幕上显示图案,持续一段时间后熄灭。图案和时间由用户自定义,鼠标单击可修改,默认值如下: 示例: 当按下按钮A时,小程的屏幕会依次显示这
8×16 蓝色LED点阵