JavaScript keydown事件不起作用

JavaScript keydown事件不起作用,javascript,Javascript,我的问题是: 我有6张图片: <img class="img" src="key_1.png" /> <img class="img" src="key_2.png" /> <img class="img" src="key_3_5.png" /> <img class="img" src="key_4.png" /> <img class="img" src="key_3_5.png" /> <img class="img" s

我的问题是: 我有6张图片:

<img class="img" src="key_1.png" />
<img class="img" src="key_2.png" />
<img class="img" src="key_3_5.png" />
<img class="img" src="key_4.png" />
<img class="img" src="key_3_5.png" />
<img class="img" src="key_6.png" />

但它不起作用。

事件应作为参数传递给事件处理程序。当事件发生时,
事件
对象作为参数传递给事件处理程序。它不是全局对象,因此不能像
window.event
那样使用它

var eventHandler=函数(事件){
console.log(event.keyCode);
//你的代码在这里
开关(event.keyCode){
案例38:
document.getElementsByClassName(“img”).style.webkitTransform=“旋转(7度)”
打破
案例40:
document.getElementsByClassName(“img”).style.webkitTransform=“旋转(-14度)”
打破
}
};
document.addEventListener('keydown',eventHandler,false)

事件
应作为参数传递给事件处理程序。当事件发生时,
事件
对象作为参数传递给事件处理程序。它不是全局对象,因此不能像
window.event
那样使用它

var eventHandler=函数(事件){
console.log(event.keyCode);
//你的代码在这里
开关(event.keyCode){
案例38:
document.getElementsByClassName(“img”).style.webkitTransform=“旋转(7度)”
打破
案例40:
document.getElementsByClassName(“img”).style.webkitTransform=“旋转(-14度)”
打破
}
};
document.addEventListener('keydown',eventHandler,false)

事件
应作为参数传递给事件处理程序。当事件发生时,
事件
对象作为参数传递给事件处理程序。它不是全局对象,因此不能像
window.event
那样使用它

var eventHandler=函数(事件){
console.log(event.keyCode);
//你的代码在这里
开关(event.keyCode){
案例38:
document.getElementsByClassName(“img”).style.webkitTransform=“旋转(7度)”
打破
案例40:
document.getElementsByClassName(“img”).style.webkitTransform=“旋转(-14度)”
打破
}
};
document.addEventListener('keydown',eventHandler,false)

事件
应作为参数传递给事件处理程序。当事件发生时,
事件
对象作为参数传递给事件处理程序。它不是全局对象,因此不能像
window.event
那样使用它

var eventHandler=函数(事件){
console.log(event.keyCode);
//你的代码在这里
开关(event.keyCode){
案例38:
document.getElementsByClassName(“img”).style.webkitTransform=“旋转(7度)”
打破
案例40:
document.getElementsByClassName(“img”).style.webkitTransform=“旋转(-14度)”
打破
}
};
document.addEventListener('keydown',eventHandler,false)

试试这个:

function rotate(deg) {
  var elems = document.getElementsByClassName('img');
  for(var i in elems) {
    var elem = elems[i];
    elem.style.webkitTransform = 'rotate('+deg+'deg)';
  }
}

document.onkeydown = function(event) {
    switch(event.keyCode) {
        case 38:
            rotate(7);
            break;
        case 40:
            rotate(-14);
            break;
    }
};
运行示例:

注意,在使用getElementsByCassName返回列表而不是单个对象时,我必须重写旋转,因此必须对其进行迭代

编辑:尽管使用addEventListener检查“正确”的非侵入式方法: 试试这个:

function rotate(deg) {
  var elems = document.getElementsByClassName('img');
  for(var i in elems) {
    var elem = elems[i];
    elem.style.webkitTransform = 'rotate('+deg+'deg)';
  }
}

document.onkeydown = function(event) {
    switch(event.keyCode) {
        case 38:
            rotate(7);
            break;
        case 40:
            rotate(-14);
            break;
    }
};
运行示例:

注意,在使用getElementsByCassName返回列表而不是单个对象时,我必须重写旋转,因此必须对其进行迭代

编辑:尽管使用addEventListener检查“正确”的非侵入式方法: 试试这个:

function rotate(deg) {
  var elems = document.getElementsByClassName('img');
  for(var i in elems) {
    var elem = elems[i];
    elem.style.webkitTransform = 'rotate('+deg+'deg)';
  }
}

document.onkeydown = function(event) {
    switch(event.keyCode) {
        case 38:
            rotate(7);
            break;
        case 40:
            rotate(-14);
            break;
    }
};
运行示例:

注意,在使用getElementsByCassName返回列表而不是单个对象时,我必须重写旋转,因此必须对其进行迭代

编辑:尽管使用addEventListener检查“正确”的非侵入式方法: 试试这个:

function rotate(deg) {
  var elems = document.getElementsByClassName('img');
  for(var i in elems) {
    var elem = elems[i];
    elem.style.webkitTransform = 'rotate('+deg+'deg)';
  }
}

document.onkeydown = function(event) {
    switch(event.keyCode) {
        case 38:
            rotate(7);
            break;
        case 40:
            rotate(-14);
            break;
    }
};
运行示例:

注意,在使用getElementsByCassName返回列表而不是单个对象时,我必须重写旋转,因此必须对其进行迭代

编辑:尽管使用addEventListener检查“正确”的非侵入式方法:

以下代码将在每次按键时按1个时钟/逆时针方向旋转所有图像

var deg=0,
$img=$('img');
函数旋转图像(deg){
$img.css({
“-webkit变换”:“旋转(“+deg+”deg)”,
“-moz变换”:“旋转(“+deg+”deg)”,
“变换”:“旋转(“+deg+”deg)”
});
}
$(文档).on('keydown',函数(e){
e、 preventDefault();//防止页面上下滚动
开关(e.keyCode | | e.which){
案例38:
deg++;
旋转图像(度);
打破
案例40:
度--;
旋转图像(度);
打破
}
});

以下代码将在每次按键时按1个时钟/逆时针方向旋转所有图像

var deg=0,
$img=$('img');
函数旋转图像(deg){
$img.css({
“-webkit变换”:“旋转(“+deg+”deg)”,
“-moz变换”:“旋转(“+deg+”deg)”,
“变换”:“旋转(“+deg+”deg)”
});
}
$(文档).on('keydown',函数(e){
e、 preventDefault();//防止页面上下滚动
开关(e.keyCode | | e.which){
案例38:
deg++;
旋转图像(度);
打破
案例40:
度--;
旋转图像(度);
打破
}
});

以下代码将在每次按键时按1个时钟/逆时针方向旋转所有图像

var deg=0,
$img=$('img');
函数旋转图像(deg){
$img.css({
“-webkit变换”:“旋转(“+deg+”deg)”,
“-moz变换”:“旋转(“+deg+”deg)”,
“变换”:“旋转(“+deg+”deg)”
});
}
$(文档).on('keydown',函数(e){
e、 preventDefault();//防止页面上下滚动
开关(e.keyCode | | e.which){
案例38:
deg++;