Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/384.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 按键并运行函数jquery_Javascript_Jquery_Function_Key - Fatal编程技术网

Javascript 按键并运行函数jquery

Javascript 按键并运行函数jquery,javascript,jquery,function,key,Javascript,Jquery,Function,Key,当用户按backspace(8)或enter(13)时,我不想运行此函数 $(文档)。按键(功能(e){ 如果(e.which==8){/--或13 var x=document.getElementsByTagName(“正文”)[0]; x、 style.backgroundImage=“-moz线性梯度(-90度,#004158 0%,#005472 100%)”; x、 style.backgroundImage=“-webkit线性渐变(-90度,#004158 0%,#005472

当用户按backspace(8)或enter(13)时,我不想运行此函数

$(文档)。按键(功能(e){
如果(e.which==8){/--或13
var x=document.getElementsByTagName(“正文”)[0];
x、 style.backgroundImage=“-moz线性梯度(-90度,#004158 0%,#005472 100%)”;
x、 style.backgroundImage=“-webkit线性渐变(-90度,#004158 0%,#005472 100%)”;
x、 style.backgroundImage=“-o-线性梯度(-90度,#004158 0%,#005472 100%)”;
x、 style.backgroundImage=“线性梯度(-180度,#004158 0%,#005472 100%)”;
}
});
但是这个代码不起作用

谢谢。


您使用的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();
}
});

--90deg
更改为
-90deg
,--90deg为无效值。您可以使用jQuery设置背景

运行代码段并在正文中按enter键,
jqueryv1.2.3
是我使用过的代码段中最古老的版本:

$(“主体”)。按键(功能(e){
如果(e.which==8 | | e.which==13){
$(“body”).css('背景','-moz线性梯度(-90度,#004158 0%,#005472 100%);
$(“body”).css('背景','-webkit线性梯度(-90度,#004158 0%,#005472 100%);
$(“body”).css('background','o-linear-gradient(-90度,#004158 0%,#005472 100%);
css(“背景”,“线性梯度(-90度,#004158 0%,#005472 100%));
}
});

不会或不想要
e.which==8
是想要的,而
e.which!=8
不会。设置
.backgroundImage
属性,然后用其他值覆盖它三次有什么意义?我想您打算一次应用所有这些渐变设置?在样式表中创建一个类并在需要时使用jQuery添加该类可能更容易。我猜她想模仿CSS模式,在最初的模式之前,对于现在不支持线性渐变的浏览器,您使用特定于供应商的渐变。在CSS中,主体已经具有此属性。我想覆盖此属性以更改背景。@MicheleCastoldi:检查我的答案,我认为这就是您想要的。为什么更改为
.on('keypress')
会有帮助
.keypress()
是等效的。你能解释你的答案吗?当然,诀窍不是。开或。按键。。。e、 preventDefault()是:)我刚才使用的.on()方法
$(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();
}
});