从浏览器打印时更改页面标题
Change the page title when printing from browser
我想在浏览器打印的每个页面上显示某个文本(ID),就像Word文档中的标题一样。从周围看,有大量的hack,这似乎不是所有的浏览器和网站工作(如何使用HTML打印页眉和页脚的每个打印页面的文件?)。
我想我可以在打印前更改网页的标题,在浏览器添加的自动标题中显示ID,打印后将其重置为原始标题(离开页面时ID不应该在标题中,由浏览器历史记录保存)。可以在所有浏览器中侦听打印事件:https://stackoverflow.com/a/3619706/198953但是,当在chrome中使用以下代码进行尝试时:
var mqList = window.matchMedia("print");
mqList.addListener(function (mql) {
if (mql.matches)
document.title = "a certain text";
else
document.title = origTitle;
});
页面标题更新在打印预览显示之后。现在,我可以在进入页面时将标题设置为ID,但是我不能使用浏览器历史记录保存的ID。我的问题就没有万无一失的解决方案吗?
问题:如何在浏览器打印的每个页面上显示特定的文本,而不将其保存在浏览器历史记录中?
我会考虑使用印刷媒体选择器,就像Touffy刚才提到的。
你可以有一个文本块,你可以改变,但只显示打印机媒体类型。
这个问题有你需要的CSS和一个小例子:
元素只在打印页可见
您可以通过访问文档对象的title属性并将其设置为您的新值来简单地设置文档的标题。这是ref
document.title = "Some new title text";
来源:W3Schools.com
通过window.print()打印时,在about:blank位置获取页面标题:添加以下行:
document.write('<head>' +
'<title>' +
'My Title' +
'</title>'+ ...)
相关文章:
- 更改当前选项卡或浏览器窗口的标题
- 在浏览器Cordova/Phonegap中获取页面标题
- 检查具有特定标题的浏览器选项卡是否已存在
- 我们如何在谷歌浏览器的每个页面上打印表格标题
- 设置PDF页面的浏览器标题
- 如何将我们自己的按钮添加到浏览器的标题栏中
- 标题中的效果与火狐浏览器不兼容
- 在浏览器的选项卡中显示标题
- 如何制作捕捉到浏览器两侧的对齐标题
- 当用户转到其他选项卡或最小化浏览器时,如何更改和闪烁浏览器的标题
- 如何在收到新消息时在浏览器的标题栏中发出警报
- Jasmine自定义匹配器与Protractor用于检查浏览器标题
- 尝试更改浏览器窗口标题时权限被拒绝
- 如何检查表中的新内容,然后更新浏览器选项卡标题
- 如何更改浏览器标题?
- 从浏览器打印时更改页面标题
- 浏览器选项卡之间的通信:所有浏览器选项卡的页面标题必须同步更新
- 如何动态更改浏览器页面标题以匹配
在javascript或jQuery标题
- 如何在javascript中使用UTF-8字符设置Safari浏览器标题
- Tab'的标题在Firefox浏览器中不闪烁