PhoneGap(Cordova 1.6)とChildBrowserでXcode 4を使用しています。私はOSXでSiteCrawlerを使用してウェブサイトを正常にダウンロードしてローカライズし、画像、PDFなどを使って完全にブラウズすることができました。ローカライズされたサイトファイルをPhoneGap wwwフォルダに移動し、サイトは完全に閲覧可能です。ChildBrowserですべてのPDFファイルを開く方法
サイト上のPDFを自分のウィンドウで開くようにしたいのですが、ChildBrowserはこれを私の必要性に完全に対応させます。 http://blog.digitalbackcountry.com/2012/03/installing-the-childbrowser-plugin-for-ios-with-phonegapcordova-1-5/を使用してChildBrowserをインストールして動作させることができました - 私はChildBrowserでPDFファイルを開いています。
私の問題は、上記のリンクを使用すると、私はontouchstart = "loadChildBrowser( '/ path/to/file.pdf'); return false;を追加する必要があります。サイト上のすべてのPDFリンクに私たちはCMSを使用しているので、これはあまり問題ではありません。つまり、大量のPDFは、CMSからデータが入力されたテンプレートから呼び出され、うまくいきます。しかし、サイトには、クライアントがアップロードされたPDFへのリンクをページのコンテンツに追加したページがいくつかあります。この場合、上記のコードをインラインリンクに簡単に追加する方法はありません。
jQueryを使用して、クリックしたときにクリックされたときにページの各タグを見ることができ、ChildBroswerインスタンスを実行すると、これは両方のタイプのPDFリンクに適用されますが、働く私が持っているものは次のとおりです。
上記のインラインリンクのjavascriptを使用しない場合、PDFは子ブラウザなしで単独で開きます。
ontouchstart = "loadChildBrowser( '/ path/to/file.pdf'); return false;"と一緒に使用すると、子ブラウザが開き、リンクによってはPDFが表示されます。 。私はこれが道のりを変えるだけだと思っていますが、もしこれを働かせることができれば、上記が最も普遍的になると思います。
<script type="text/javascript" src="https://stackoverflow.com/a/js/cordova-1.6.0.js"></script>
<script type="text/javascript" src="https://stackoverflow.com/a/js/ChildBrowser.js"></script>
<script>
// install ChildBrowser
var cb = ChildBrowser.install();
//loading a web page in ChildBrowser
function loadChildBrowser(file) {
cb.showWebPage(encodeURI(file));
}
</script>