当用户按退格键(8)或输入(13)时,我不想运行此功能。
$(document).keypress(function(e) {
if(e.which == 8) { //-- or 13
var x = document.getElementsByTagName("BODY")[0];
x.style.backgroundImage = "-moz-linear-gradient(--90deg, #004158 0%, #005472 100%)";
x.style.backgroundImage = "-webkit-linear-gradient(--90deg, #004158 0%, #005472 100%)";
x.style.backgroundImage = "-o-linear-gradient(--90deg, #004158 0%, #005472 100%)";
x.style.backgroundImage = "linear-gradient(-180deg, #004158 0%, #005472 100%)";
}
});
但是这段代码不起作用。
感谢。
答案 0 :(得分:1)
你使用的jQuery版本是什么?
$(document).on('keypress', function(e) {
if(e.which == 8 || e.which == 13) { //-- or 13
var x = document.getElementsByTagName("BODY")[0];
x.style.backgroundImage = "-moz-linear-gradient(--90deg, #004158 0%, #005472 100%)";
x.style.backgroundImage = "-webkit-linear-gradient(--90deg, #004158 0%, #005472 100%)";
x.style.backgroundImage = "-o-linear-gradient(--90deg, #004158 0%, #005472 100%)";
x.style.backgroundImage = "linear-gradient(-180deg, #004158 0%, #005472 100%)";
e.preventDefault();
}
});
答案 1 :(得分:0)
Try keydown instead of keypress
$(document).keydown(function(e) {
if(e.which == 8) { //-- or 13
alert('8');
}
});
答案 2 :(得分:0)
将--90deg
更改为-90deg
, - 90deg无效值。并且您可以使用jQuery设置背景
运行代码段并在正文上按Enter键,jquery v1.2.3
是我使用过的代码段中最早的代码:
$("body").keypress(function(e) {
if (e.which == 8 || e.which == 13) {
$("body").css('background', '-moz-linear-gradient(-90deg, #004158 0%, #005472 100%)');
$("body").css('background', '-webkit-linear-gradient(-90deg, #004158 0%, #005472 100%)');
$("body").css('background', '-o-linear-gradient(-90deg, #004158 0%, #005472 100%)');
$("body").css('background', 'linear-gradient(-90deg, #004158 0%, #005472 100%)');
}
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.2.3/jquery.min.js"></script>
&#13;