Javascript 打印代码不起作用

标签 javascript jquery html

我有一个代码,当单击链接时打印特定的 div,但我似乎无法让它工作。

代码的目的是,当我单击链接“HEJ”时,它应该打印我的 div,名为 mydiv,我找到了一个应该执行此操作的脚本,但我似乎无法让它工作。

<script type="text/javascript" src="http://jqueryjs.googlecode.com/files/jquery-1.3.1.min.js" > </script>

    <script type="text/javascript">

        function PrintElem(elem)
        {
            Popup($(elem).html());
        }

        function Popup(data) 
        {
            var mywindow = window.open('', 'my div', 'height=400,width=600');
            mywindow.document.write('<html><head><title>my div</title>');
            /*optional stylesheet*/ //mywindow.document.write('<link rel="stylesheet" href="main.css" type="text/css" />');
            mywindow.document.write('</head><body><p style="font-family:arial">');
            mywindow.document.write(data);
            mywindow.document.write('</p></body></html>');

            mywindow.document.close(); // necessary for IE >= 10
            mywindow.focus(); // necessary for IE >= 10

            mywindow.print();
            mywindow.close();

            return true;
        }

    </script>

上面的代码是我在互联网上找到的javascript,下面的代码是触发javascript代码的HTML。

<div id="mydiv">
Test
</div>

<a href="#" onclick="PrintElem('.mydiv')" />HEJ</a>

我也尝试过删除 .在 onclick 元素中的 mydiv 之前,但它们都不起作用,当我单击链接时没有任何反应。

希望大家能帮我解决这个问题。

最佳答案

传递给 PrintElem() 的参数是一个 jQuery 选择器,因此 .mydiv 选择具有 class="mydiv" 的元素在他们身上。

在上述情况下,由于有一个 id 为 mydiv 的 div,因此我们使用 #mydiv 来定位它:

<a href="#" onclick="PrintElem('#mydiv')">HEJ</a>

我还修复了自关闭标签/>,它不会让您的链接工作。

关于Javascript 打印代码不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39609763/

相关文章:

php - <Select>从容器继承javascript onclick并隐藏选项

javascript - 单击按钮时避免浏览器自动完成表单功能

jquery - 为什么 Post 代码在 jQuery 加载时被触发?

javascript - 使用 Bootstrap Nav 选项我需要从悬停中排除最终元素

html - 带上标的日期样式下划线

javascript - 使用 JavaScript 的下一个和后退按钮

javascript - jQuery $.get() 内存使用情况

javascript - 当 opacity=false 时,图像流动画在 IE 上看起来很糟糕

jquery - 如何在 jQuery Mobile 中为水平选项卡栏添加 Angular

html - 当你在侧面有导航栏时如何使元素居中?