【问题标题】:JavaScript print function make the calendar stop workingJavaScript 打印功能使日历停止工作
【发布时间】:2012-09-14 05:35:54
【问题描述】:

我使用 Joomla 作为我的 CMS,并使用下面的 JavaScript 来打印页面的特定区域(实际上是整个正文)。

JavaScript

function printDiv(divName) {

             var printContents = document.getElementById(divName).innerHTML;
             var originalContents = document.body.innerHTML;
             document.body.innerHTML = printContents;
             window.print();
             document.body.innerHTML = originalContents;
    }

我使用 Joomla 在正文选择的同一页面上获取日历。

PHP

<?php echo JHTML::calendar($filter_date_to,'filter_date_to', 'filter_date_to', '%Y-%m-%d', `'');?>

在尝试打印某些内容后,日历停止工作。控制台中也没有显示 js 错误。似乎是什么问题?

【问题讨论】:

    标签: javascript php mootools joomla1.7


    【解决方案1】:

    假设日历依赖于 javascript,它可能会停止工作,因为所有事件侦听器都未绑定。您最好在新的弹出窗口中打开日历信息并打印它,或者拍摄日历信息的快照,使用 display:none 隐藏当前日历,创建一个可见的新 div 并将该快照放在要打印的日历信息,然后在完成后将其删除。

    除此之外,您还可以使用 CSS 媒体查询使页面中您不想打印的所有部分消失,因此您根本不必这样做。

    【讨论】:

    • 感谢您的支持。我现在正在使用另一个插件。你的答案也可以实现。
    猜你喜欢
    • 1970-01-01
    • 2021-12-05
    • 1970-01-01
    • 2017-10-29
    • 1970-01-01
    • 1970-01-01
    • 2014-01-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多