我只想阻止用户获取网页的打印副本。我知道这不是用户友好的,但是,这是一个特殊的场景,一个考试界面,考生将在考试中尝试提问。所以我不希望他们拍摄页面的打印件。我还阻止了其他必要的选项,如上下文菜单,alt键,另存为html等,尽管它在用户的特定视图中并不好。
我使用Jquery完成了它,但代码在Safari中无效。
代码:
$(document).keydown(function(event) {
// Disable Ctrl+P.
if(!event) event = window.event;
if (event.ctrlKey && (event.which === 80)) {
event.preventDefault();
alert(event.isDefaultPrevented());
}
});
但是,警报显示值'true',然后使用Print对话框提示。我尝试过return false
代替event.preventDefault();
,然后也没有工作。我无法弄清楚为什么在Safari中这种奇怪的行为。请帮忙。谢谢:) -
答案 0 :(得分:0)
您可以尝试以下代码:
$(document).on("keyup keydown", function(e){
if(e.ctrlKey && e.keyCode == 80){
alert('Ctrl + P pressed!');
return false;
}
});