改变css属性取决于如果条件与右键按
Change css property depend on if condition with right key press
我想改变css属性取决于if-condition,如果用户按右键改变特定颜色的背景,如果他再次按下改变背景颜色为其他颜色是什么意思
$(document).ready(function() {
$(document).keyup(function(e) {
var counter = 0;
switch (e.which) {
case 39: // right
if (counter == 1) {
$(".my-div").css("background-color", "red");
counter = counter + 1;
}
if (counter == 2) {
$(".my-div").css("background-color", "yellow");
counter = counter + 1;
}
if (counter == 3) {
$(".my-div").css("background-color", "green")
counter = counter + 1;
}
break;
default:
return; // exit this handler for other keys
}
e.preventDefault(); // prevent the default action (scroll / move caret)
});
console.log(counter);
})
.my-div {
width: 1170px;
height: 500px;
margin: 50px auto;
background-color: #0026ff;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="my-div"></div>
使用样式表更改背景颜色。以下是如何使用元素来跟踪其当前状态,同时控制样式的方法:
$(document).ready(function() {
$(document).keyup(function(e) {
var counter = $(".my-div").attr('rcount') || 0;
//Resets to state0. Uncomment to stop after third trigger:
//if (counter < 3)
counter = (++counter % 4);
switch (e.which) {
case 39: // right
$(".my-div").attr("rcount", counter);
break;
default:
return;
}
e.preventDefault();
});
})
.my-div {
width: 200px;
height: 500px;
margin: 50px auto;
background-color: #0026ff;
}
.my-div[rcount='0'] { background-color: #0026ff;}
.my-div[rcount='1'] { background-color: red;}
.my-div[rcount='2'] { background-color: yellow; }
.my-div[rcount='3'] { background-color: green; }
/* Debug styles added to show current rcount value */
.my-div.debug { position:relative; }
.my-div.debug:before {
content: 'rcount ' attr( rcount );
color:white;
text-shadow:1px 1px 1px black;
position:absolute;
left:0;
top:0;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="my-div debug"></div>
将计数器移出keyup
事件并将其设置为1
,使用triple = ===
代替并将else
添加到条件中,以便它将检查条件然后移动到下一个,在这些条件中增加counter
:
$(document).ready(function() {
var counter = 1;
$(document).keyup(function(e) {
switch (e.which) {
case 39: // right
if (counter === 1) {
$(".my-div").css("background-color", "red");
counter++;
}else if (counter === 2) {
$(".my-div").css("background-color", "yellow");
counter++;
}else if (counter === 3) {
$(".my-div").css("background-color", "green")
counter=1;
}
break;
default:
return; // exit this handler for other keys
}
e.preventDefault(); // prevent the default action (scroll / move caret)
});
})
.my-div {
width: 117px;
height: 50px;
margin: 50px auto;
background-color: #0026ff;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="my-div"></div>
试试这个,当你输入click
right arrow
或left arrow
时,它会显示random color
<html>
<head></head>
<title></title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<style type="text/css">
.changeme{
width: 300px;
height: 300px;
background-color: orange;
}
</style>
<body>
<div class="changeme"></div>
</body>
<script type="text/javascript">
$("body").keydown(function(e){
if(e.keyCode == 37)//when you click the left arrow button
{
var theColor = getRandomColor();
$(".changeme").css({"background-color":theColor});
}
else if(e.keyCode == 39)//when you click right arrow button
{
var theColor = getRandomColor();
$(".changeme").css({"background-color":theColor});
}
});
//generate a random color
function getRandomColor() {
var letters = '0123456789ABCDEF';
var color = '#';
for (var i = 0; i < 6; i++ ) {
color += letters[Math.floor(Math.random() * 16)];
}
return color;
}
</script>
</html>
相关文章:
- 点击(右键点击)使用传单地图库获取图像覆盖的像素坐标
- 何时可以;我的用户脚本在Javascript中触发右键单击(上下文菜单)
- 如何知道你右键点击谷歌chrome扩展是什么
- 我们可以在HTML中禁用右键单击锚标记吗
- 在动态crm 2011中,右键单击已完成活动的只读文本时,您是否出现错误
- jqGrid - 在右键单击时禁止选择行
- 右键单击夜巡
- JavaScript 左键和右键单击功能
- 如何禁用右键单击以在 JavaScript 中下载图像
- 如何禁用右键单击WordPress网站
- 导致右键单击触发左键单击
- 通过右键单击更改完整日历中事件的背景颜色 - 不起作用
- 在 CkEditor 4.3 中禁用右键单击
- 右键点击标记-谷歌地图V3
- jQuery网站的键盘快捷键,焦点使用左键和右键转到上一个或下一个元素
- 使用Javascript禁用上下文菜单(右键单击)
- 为左键或右键单击附加事件侦听器-onclick'右键单击无效
- 复制右键单击灯箱的操作,就像在github.com上一样
- 按左键或右键无法更改颜色
- 改变css属性取决于如果条件与右键按