javascript - 无法添加 onmousemove

标签 javascript html css

我有下一张 table :

div class="container">
    <table id="myTable">
    <tr onmousemove="changeVposition(this)">
      <td onmousemove="changeGposition(this)">
        <div class="cell"></div>
      </td>
      <td onmousemove="changeGposition(this)">
        <div class="cell"></div>
      </td>
      <td onmousemove="changeGposition(this)">
        <div class="cell"></div>
      </td>
      <td onmousemove="changeGposition(this)">
        <div class="cell"></div>
      </td>
    </tr>
    <tr onmousemove="changeVposition(this)">
      <td onmousemove="changeGposition(this)">
        <div class="cell"></div>
      </td>
      <td onmousemove="changeGposition(this)">
        <div class="cell"></div>
      </td>
      <td onmousemove="changeGposition(this)">
        <div class="cell"></div>
      </td>
      <td onmousemove="changeGposition(this)">
        <div class="cell"></div>
      </td>
    </tr>
    <tr onmousemove="changeVposition(this)">
      <td onmousemove="changeGposition(this)">
        <div class="cell"></div>
      </td>
      <td onmousemove="changeGposition(this)">
        <div class="cell"></div>
      </td>
      <td onmousemove="changeGposition(this)">
        <div class="cell"></div>
      </td>
      <td onmousemove="changeGposition(this)">
        <div class="cell"></div>
      </td>
    </tr>
    <tr onmousemove="changeVposition(this)">
      <td onmousemove="changeGposition(this)">
        <div class="cell"></div>
      </td>
      <td onmousemove="changeGposition(this)">
        <div class="cell"></div>
      </td>
      <td onmousemove="changeGposition(this)">
        <div class="cell"></div>
      </td>
      <td onmousemove="changeGposition(this)">
        <div class="cell"></div>
      </td>
    </tr>

    </table>
    <button onclick="appendCol()" id ="appendCol"></button>
    <button onclick="appendRow()" id ="appendRow"></button>
    <button onclick="deleteRow()" id="deleteRow"></button>
    <button onclick="deleteCol()" id="deleteCol"></button> 

  </div>

并在创建具有功能的新列期间

function appendCol() {
      var tbl = document.getElementById("myTable")
      var tr = tbl.getElementsByTagName("tr");
      for (i = 0; i < tr.length; i++) {

        var td = document.createElement('td');
        td.onmousemove = changeGposition(this);
        var div = document.createElement('div')
        div.className = "cell"
        tr[i].appendChild(td).appendChild(div)



      }

但它不起作用,onmousemove没有添加

谁知道为什么它不起作用?

注意:用<div>元素它正在工作,我在调用函数后有下一个 DOM

<td onmousemove="changeGposition(this)">
        <div class="cell"></div>
      </td>
<td>
        <div class="cell"></div>
      </td>

最佳答案

当你做的时候

td.onmousemove = changeGposition(this);

它正在调用函数并将返回的内容分配给事件监听器。

应该是

td.onmousemove = function () { changeGposition(this); }

关于javascript - 无法添加 onmousemove,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44458447/

相关文章:

带边框和圆 Angular 的 CSS3 六边形按钮

javascript - 将输入从 prompt() 传输到文本字段

javascript - 重新加载页面时在 Angular 应用程序中重写 URL

javascript - 当我尝试从 CMC 获取 ETH 最后价格时,收到 "undefined"

javascript - Angular 4 和 ngx-datatable : 'ngx-datatable' is not a known element

javascript - $.each 不更新 css 宽度

javascript - javascript 中带有两个单词的 attr id

javascript - 在 Firefox/IE7 中如何处理大于 17 位的数字?

html - 自定义组件注入(inject)表格行

html - CSS3 3D 动画不适用于 :hover property