Javascript - 每次鼠标悬停时生成新颜色
Javascript - Generate new color on every mouseover
Edit : 我唯一的问题是缺少 jQuery
我的代码应该在每次鼠标悬停时生成一个新颜色,但它不起作用,你能告诉我问题在哪里吗?
var number;
var newColor;
setInterval(function() {
number = Math.floor((Math.random() * 1000000) + 1);
newColor = "#" + number;
}, 1000);
$("#myBtn").mouseover(function() {
$("#myDiv").css("background-color", newColor);
});
div {
background: red;
width: 100px;
height: 100px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<button id="myBtn">Hover Here To Change Color</button>
<div id="myDiv"></div>
当鼠标悬停在按钮上时,此代码将每秒更改颜色 - 如果这不是您的意图,那么您遇到的唯一问题是缺少 jQuery
var isOver = false; // only required if colour should change continuously
var newColor;
setInterval(function() {
var number = Math.floor((Math.random() * 1000000) + 1);
newColor = "#" + number;
// next 3 lines only required if colour should change continuously
if(isOver) {
$("#myDiv").css("background-color", newColor);
}
}, 1000);
$("#myBtn").mouseover(function() {
isOver = true; // only required if colour should change continuously
$("#myDiv").css("background-color", newColor);
});
// next 3 lines only required if colour should change continuously
$("#myBtn").mouseout(function() {
isOver = false;
});
div {
background: red;
width: 100px;
height: 100px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<button id="myBtn">Hover Here To Change Color</button>
<div id="myDiv"></div>
尝试用以下代码替换代码
var number;
var newColor;
$("#myBtn").mouseover(function() {
number = Math.floor((Math.random() * 1000000) + 1);
newColor = "#" + number;
$("#myDiv").css("background-color", newColor);
});
div {
background: red;
width: 100px;
height: 100px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<button id="myBtn">Hover Here To Change Color</button>
<div id="myDiv"></div>
这个会在每mouseover
上改变颜色。
我拿出了setInterval
,因为我不明白你为什么需要它......?
$("#myBtn").mouseover(function() {
$("#myDiv").css("background-color", "#" + Math.floor((Math.random() * 1000000) + 1));
});
div {
background: red;
width: 100px;
height: 100px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<button id="myBtn">Hover Here To Change Color</button>
<div id="myDiv"></div>
在代码笔上它对我有用,如果您想在鼠标悬停而不是鼠标退出时获得新颜色,则应将鼠标输出设置为相同的颜色。
我遇到的唯一问题是缺少jQuery
相关文章:
- 使用JS如何动态更改显示的html文件中的文本背景颜色
- 高亮显示时编辑文本大小和颜色
- AngularJs设置背景颜色/颜色的动画
- 在提交时更改按钮颜色,直到输入新文本
- 如何在选择“输入颜色”后从中获取新的颜色值
- 在 html 中,打开一个具有选定背景颜色的新窗口
- Javascript - 每次鼠标悬停时生成新颜色
- 当管理员在管理面板中获得新任务时,如何更改菜单按钮颜色
- 用新值更新JQVMap-map(颜色更改)
- 按下提交按钮后,用相同的颜色框打开一个新表单
- 将新的笔划颜色注入到形状中
- 当以手风琴方式打开外部菜单项时,无法向第一个子菜单项添加新的颜色类
- 在单击新按钮时切换链接/按钮颜色
- 如何在javascript中改变新标签的颜色
- 如何更改ui-grid的单元格的背景颜色为某些颜色,如果它的编辑和新值不等于旧值(脏)
- 用新颜色叠加图像
- 如何在不创建新对象的情况下改变nokia.maps.map.StandardMarker的颜色
- 当点击下个月或前一个月时,保持当前的新背景颜色在完整的日历
- 值更改时文本框上的新背景颜色
- JavaScript 通过单击设置新的背景颜色