这是我的代码
<script>
var body = "dddddd"
var script = "<script>window.print();</scr'+'ipt>";
var newWin = $("#printf")[0].contentWindow.document;
newWin.open();
newWin.close();
$("body",newWin).append(body+script);
</script>
<iframe id="printf"></iframe>
Run Code Online (Sandbox Code Playgroud)
这可以,但它打印父页面,我如何让它只打印iframe?
有人可以通过Safari/Chrome中的javascript调用帮助我打印IFrame的内容.
这适用于Firefox:
$('#' + id)[0].focus();
$('#' + id)[0].contentWindow.print();
Run Code Online (Sandbox Code Playgroud)
这适用于IE:
window.frames[id].focus();
window.frames[id].print();
Run Code Online (Sandbox Code Playgroud)
但我无法在Safari/Chrome中使用任何功能.
谢谢
安德鲁
我正在研究案例解析系统,目前正在使用jquery颜色框向用户显示打开的任务列表.用户希望能够打印此列表,我想您可以通过添加从iframe中触发window.print的JavaScript链接在页面内部执行此操作.但是,我还要考虑用户可能从浏览器的菜单中选择打印.在这种情况下,如果颜色框是打开的,我只想打印其内容而不是上面的页面.
是否可以使用打印媒体CSS文件隐藏除iframed内容之外的所有内容?如果是这样,怎么能实现呢?如果做不到这一点,我将需要求助于JavaScript,那么在JavaScript中实现这种效果是否可行?