Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/446.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在应用浏览器中通过JavaScript打印Cordova/Phonegap_Javascript_Ios_Cordova_Plugins_Printing - Fatal编程技术网

在应用浏览器中通过JavaScript打印Cordova/Phonegap

在应用浏览器中通过JavaScript打印Cordova/Phonegap,javascript,ios,cordova,plugins,printing,Javascript,Ios,Cordova,Plugins,Printing,我想从我正在开发的iPad应用程序中打印一页(或一些页面)。应用程序启动时要做的第一件事是通过以下代码加载外部网站: window.location = https://*****.**; 我现在想从这个外部网站上打印一些东西(在iPad上的Safari中效果很好)。尝试这个简单的代码 window.print(); 但在Cordova/Phonegap包装的web应用程序中,它不起作用 我知道有这个>的插件,但是这些插件需要js/html代码是本地的,对吗 对如何在我的应用程序中提供打印有

我想从我正在开发的iPad应用程序中打印一页(或一些页面)。应用程序启动时要做的第一件事是通过以下代码加载外部网站:

window.location = https://*****.**;
我现在想从这个外部网站上打印一些东西(在iPad上的Safari中效果很好)。尝试这个简单的代码

window.print();
但在Cordova/Phonegap包装的web应用程序中,它不起作用

我知道有这个>的插件,但是这些插件需要js/html代码是本地的,对吗

对如何在我的应用程序中提供打印有何建议?任何建议都是非常受欢迎的,希望有一个简单的方法


谢谢

我知道这是个老问题,但到目前为止还没有答案,我遇到了同样的问题

将通过ajax访问的页面加载到本地javascript变量中,并将包含要打印的html的本地变量发送到打印插件的打印函数

如果要打印当前页面,只需将内容放入局部变量并将其发送到打印插件即可

您可以使用jQuery$.ajax、XmlHttpRequest或任何希望将html字符串转换为局部变量的工具

用法示例(需要jQuery):

看起来很简单,它可以工作=)还没有尝试过,谢谢你的建议!
$.get('https://*****.**',function(html){
    window.app.print(data,
        function(){
            console.log('success');
        },
        function(){
            console.log('error');
        }
    );
});

***OR***

var html = $('body').html();
window.app.print(html,
    function(){
         console.log('success');
    },
    function(){
         console.log('error');
    }
);

window.app = window.app || {};
window.app.print = function(html,successCallback,errorCallback) {
    successCallback = successCallback|| function(){};
    errorCallback = errorCallback|| function(){};
    var type = "text/html";
    var title = "test.html";
    var fileContent = html;
    window.plugins.PrintPlugin.print(
        fileContent,
        successCallback,
        errorCallback,
        "",
        type,
        title
    );
};