printThis.js有时不打印内容

时间:2016-01-21 12:19:49

标签: javascript jquery angularjs printthis

我正在使用printThis.js并尝试使用angularjs打印html。我的代码是

var myApp = angular.module('myApp',[]);

function MyCtrl($scope) {
    $scope.Html = '<div><p>Pakistan</p></div>';
    $scope.printMe = function (){
        $dvPrint = $($scope.Html);

                $dvPrint.printThis();
    }
}

Html代码:

<div ng-controller="MyCtrl">
  <button id="print_btn" ng-click="printMe()">click it</button><br />
</div>

jsFiddle

我面临的问题是,如果我在本地机器上工作,它的工作原理很完美。但如果我在本地服务器上部署它,那么有时打印预览是空的。而在服务器上调试已部署的代码时,printthis.js可以正常工作。

我试图增加printthis.js中的超时时间,但它没有奏效。关于这个问题的任何想法?我的jquery版本是2.1.0

我想在这里添加的另一件事是,如果我在页面加载后编辑我需要打印的html内容,那么printThis.js将正常工作,内容将在打印预览中。在其他情况下,如果第一次加载页面呈现和html内容,printThis.js将呈现空预览。

2 个答案:

答案 0 :(得分:1)

你可以试试CSS方面......这是代码

@media print {

.show {字体大小:24像素;字型重量:粗体;显示:块;} }

答案 1 :(得分:0)

在我的localMachine工作

 $scope.Html = '<div><p>Pakistan</p></div>';
        $scope.printMe = function () {
            $scope.dvPrint = $($scope.Html);
            $scope.dvPrint.printThis();
        };