国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

原生態js,鼠標按下后,經過了那些單元格的簡單實例

2019-11-20 09:15:51
字體:
來源:轉載
供稿:網友

本來是要判斷那些單元格被選中,結果發現行不通,只能判斷鼠標按下后,經過了那些單元格

之所以發出來,是覺得案例還有很多有意思的地方

onmouseover  的持續觸發,導致了很多重復元素

由于將事件綁定在整個table上,還出現了undefined

鼠標的反復進入進出,會導致相同元素的斷斷續續的重復,

如何解決他們!

<table border="1" id="dnf">   <tr>               <td rowspan="2">2</td>     <td>2</td>     <td>4</td>   </tr>   <tr>               <td>2</td>     <td>4</td>   </tr> </table> 
window.onload = function() {   var flag = false;<BR>     //當鼠標被按下時,為true,放開是為true   var indexs =[];<BR>      //用來存放鼠標經過的單元格在整個表格的位置,鼠標按下時被初始化,   dnf.onmousedown = function()   {     flag = true;     indexs = [];   }   dnf.onmousemove = function(e)   {     if(flag)//只有鼠標被按下時,才會執行復合代碼     {       indexs.push(search(e.target,dnf.getElementsByTagName("td")))       }   }   dnf.onmouseup = function()   {     flag = false;     deleteUndefined();//由于會經過邊框,所以會出現null元素     deleteRepaint();//由于onmouseover不會只觸發一次,且我們選擇是可能反復經過一個單元格     alert(indexs);   }   function deleteRepaint()   {     for(var j=0;j<indexs.length;j++)//保證第j個元素是唯一的     {       var head = indexs[j];       for(var i=j+1;i<indexs.length;i++)//刪除與第j個重復的       {         if(head == indexs[i])         {           indexs.splice(i,1);           i--;         }       }     }   }   function deleteUndefined()   {          for(var i=0;i<indexs.length;i++)     {       if(typeof indexs[i] == "undefined")       {         indexs.splice(i,1);         i--;       }     }        }   function search(a,A)   {     var length = A.length;          for(var i=0;i<length;i++)     {              if(a == A[i])       {                return i;       }            }   } } </script>

以上這篇原生態js,鼠標按下后,經過了那些單元格的簡單實例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 深泽县| 全南县| 慈利县| 襄汾县| 清新县| 章丘市| 永新县| 南投县| 三原县| 江口县| 聂荣县| 玛多县| 恭城| 濮阳市| 仙居县| 库尔勒市| 昭觉县| 襄汾县| 黑水县| 巴南区| 龙井市| 康马县| 镇沅| 沧州市| 武汉市| 遵义市| 南部县| 巴林右旗| 鄂伦春自治旗| 延吉市| 姜堰市| 太仓市| 台北县| 凯里市| 游戏| 时尚| 安西县| 平武县| 丰顺县| 新宁县| 永春县|