javascript - 如何禁用 Chrome 的 Ctrl + P

标签 javascript jquery jquery-events

我的一个应用程序具有自定义按钮来打印客户发票。浏览器还具有默认打印选项(Cntrl + P)来打印窗口内容。

最初,我通过添加以下内容解决了这个问题:

$(document).ready(function(){
    $(document).keydown(function(event) {
        if (event.ctrlKey==true && (event.which == '80') { //cntrl + p
            event.preventDefault();
        }
    });
 });

但我觉得,这不是可行的解决方案。因为我在这里将这个(keydown)事件绑定(bind)到文档上。因此,应用程序上的每个按键都会触发此 (keydown) 事件,因此就性能而言,这非常关键。

是否有其他解决方案,以便我可以禁用 Cntrl + P (无需绑定(bind)事件)?

注意:重要且好的一点是我们的客户仅使用 Google Chrome 浏览器来访问此应用程序。

最佳答案

您是否考虑过使用它:

<link rel="alternate" media="print" href="alternativeUrlForPrint.ext" />

关于javascript - 如何禁用 Chrome 的 Ctrl + P,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11373937/

相关文章:

jquery - 我可以在按钮单击时显示/创建 jsTree 吗?

java - jQuery 移动与 ajax 问题

javascript - 用于加载的 Angular 绑定(bind)不会更新 HTML

javascript - 在 handlebars 模板中设置第一个单选按钮被选中

javascript - jQuery点击改变颜色

javascript - PHP判断客户端请求的dataType或responseType

javascript - 如何在选择框中设置只读 false 以及当选择复选框时,它将是可编辑的。在我的 jquery 代码中禁用不起作用

javascript - 切换功能不起作用

javascript - 使用变量引用数组的索引时无法更改 Jquery 中的 css

javascript - Uikit.nestable 组件 - 如何从移动的项目中获取 id