- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想在单击鼠标并在元素上方更改背景颜色,并可以移动它,这样您就不必单击每个元素,而是能够用鼠标“绘制”。但我不知道怎么办。我现在的代码如下
function change_color(x, y) {
console.log(x, y);
var elem = document.getElementById(x.toString() + "-" + y.toString());
if (elem.style.backgroundColor == 'white')
elem.style.backgroundColor = 'black';
else
elem.style.backgroundColor = 'white';
}
#board td {
/*border: 1px solid rgb(175, 216, 248);*/
width: 25px;
height: 25px;
border: 1px solid black;
background-color: white;
}
<table id="board">
<tr>
<td id='0-0' onmousedown="change_color(0,0);"></td>
<td id='0-1' onmousedown="change_color(0,1);"></td>
</tr>
<tr>
<td id='1-0' onmousedown="change_color(1,0);"></td>
<td id='1-1' onmousedown="change_color(1,1);"></td>
</tr>
</table>
最佳答案
您需要使用某种变量来了解鼠标是否按下并使用 mousemove 事件。
let isDown = false
document.body.addEventListener("mousedown", function () {
isDown = true
});
document.body.addEventListener("mouseup", function () {
isDown = false
});
document.getElementById("grid").addEventListener("mousemove", function (evt) {
if (isDown) evt.target.classList.add("active")
})
table {
border-spacing: 0;
border-collapse: collapse;
empty-cells: show;
}
td{
width: 10px;
height: 10px;
background-color: white;
border: 1px dotted #eee;
}
td.active {
background-color: black
}
<table id="grid">
<tr>
<td></td><td></td><td></td><td></td><td></td>
<td></td><td></td><td></td><td></td><td></td>
</tr>
<tr>
<td></td><td></td><td></td><td></td><td></td>
<td></td><td></td><td></td><td></td><td></td>
</tr>
<tr>
<td></td><td></td><td></td><td></td><td></td>
<td></td><td></td><td></td><td></td><td></td>
</tr>
<tr>
<td></td><td></td><td></td><td></td><td></td>
<td></td><td></td><td></td><td></td><td></td>
</tr>
<tr>
<td></td><td></td><td></td><td></td><td></td>
<td></td><td></td><td></td><td></td><td></td>
</tr>
</table>
关于JavaScript onmousemove 和 onclick,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57997908/
我确定我在这里遗漏了一些简单的东西,但我很难过。 为什么 addEventListener 和 removeEventListener 函数在这些 React 生命周期方法中不起作用,但它们下面的注释
我真的不知道如何在标题中表达这一点,但我正在尝试创建一个包含所有事件函数的类,但我遇到了奇怪的问题。 这是问题的一些模拟代码。 class Mouse{ constructor(){
我正在学习使用 onmousemove 事件,但无法使其工作,其想法是稍微倾斜图像以创建一种效果,就像它跟随鼠标一样,我猜是一种视差。这就是我想要实现的目标: https://tympanus.net
这个问题已经有答案了: How to get mouse position in jQuery without mouse-events? (7 个回答) 已关闭 3 年前。 在 Javascript
这个问题已经有答案了: What is the (function() { } )() construct in JavaScript? (28 个回答) 已关闭 3 年前。 我正在编写一些 Java
我有下一张 table : div class="container">
我正在尝试使用 javascript 创建一个自定义视频播放器,代码应该在 onmousemove 事件上显示叠加层它确实触发了代码但由于某种原因两次,我认为这是因为每个顶部都有双全屏 div其他,但
function aim() { var mousex = ? } 我找不到如何在 javascript 中获取 onmousemove 事件的鼠标坐标。 最佳答案 var guide =
我搜索了本博客和其他博客中提供的答案,但没有找到任何解决方案。非常感谢您的帮助。 我有一个 onmousemove 事件,它正在执行要触发的事件列表中的第一项,但不会执行第二项。 document.g
我正在我网页上的一个 div 中加载一个外部网页(即本例中的 www.duckduckgo.com)。我想在 div 内部和外部获取鼠标的 X 和 Y 位置,但是当我在 div 内部时,网页似乎阻止了
我正在做一个jsp页面,它记录了鼠标在该页面上的时刻。我有记录时刻的代码,但我不知道如何将总时刻的最终值传递给变量? onmousemove: Mouse over and leave me!
我已经对 javascript 中的事件进行了一些研究,但仍然无法弄清楚 onmousemove 中传递给事件的内容是什么。 摘自:W3schools onmousemove="show_coords
我想在单击鼠标并在元素上方更改背景颜色,并可以移动它,这样您就不必单击每个元素,而是能够用鼠标“绘制”。但我不知道怎么办。我现在的代码如下 function change_color(x, y) {
我的应用程序有 350 个编辑字段,所有这些字段都应有一个 OnMouseMove 事件。我已经为所有这些生成了以下代码: ... type ... procedure Edit1MouseMo
var zoomPad = document.getElementsByClassName('zoomPad'); zoomPad[0].onmouseover = function(){ v
这可能已得到解答,但无法在搜索中找到任何正面结果。 有一个脚本可以使用各种额外的计算来移动元素“正常” x,y 定位。 我没有使用 JQuery 或任何其他库,但这里有一个核心示例:>> fiddle
我这里有一个真正的问题。我希望仅当单击对象以及将鼠标移到对象上时才调用函数。这是一个示例(忽略奇怪的语法)以帮助您理解: 我正在想一个办法来解决这个问题。如果我创建一个 onMouseDown 来触
为了给我们的 Web 应用程序添加一些个性,我在某些元素上添加了一些动画,当鼠标靠近时,我们的机器人吉祥物会从后面窥视。为此,我使用 onmousemove 函数来检查光标的距离,并在鼠标靠近时为机器
大家好:)如果我在示例中使用鼠标指针传递 div,函数在控制台中打印两次,这意味着 onmousemove 事件被触发两次。我还打印了鼠标指针的坐标以及您如何在下图,我也没有垂直移动,只是水平移动。考
我正在实现“调整大小 handle ”来更改左侧导航面板的宽度。这是一个div收到onMouseDown()事件,计算必要的宽度并将它们应用于后续调用中的正确元素 onMouseMove() .但我遇
我是一名优秀的程序员,十分优秀!