<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當前位置: 首頁 - 科技 - 知識百科 - 正文

        DIV拖動及DOM2移除事件注意事項

        來源:懂視網 責編:小采 時間:2020-11-09 08:32:51
        文檔

        DIV拖動及DOM2移除事件注意事項

        DIV拖動及DOM2移除事件注意事項:記錄這個沒別的意思,之前這段代碼貌沒有問題,但是調試的時候移除事件貌不能用源代碼如下: !--拖動div--!DOCTYPE html PUBLIC -//W3C//DTD XHTML 1.0 Transitional//EN http://www.w3.org/TR/xhtml1/DTD/xhtml1-tran
        推薦度:
        導讀DIV拖動及DOM2移除事件注意事項:記錄這個沒別的意思,之前這段代碼貌沒有問題,但是調試的時候移除事件貌不能用源代碼如下: !--拖動div--!DOCTYPE html PUBLIC -//W3C//DTD XHTML 1.0 Transitional//EN http://www.w3.org/TR/xhtml1/DTD/xhtml1-tran

        記錄這個沒別的意思,之前這段代碼貌沒有問題,但是調試的時候移除事件貌不能用源代碼如下: !--拖動div--!DOCTYPE html PUBLIC -//W3C//DTD XHTML 1.0 Transitional//EN http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtdhtml xmlns=http://www.w3.

        記錄這個沒別的意思,之前這段代碼貌似沒有問題,但是調試的時候移除事件貌似不能用源代碼如下:

        
        
        
        
        無標題文檔
        
        -->
        
        
        
         
        
        
        
        


        一直搞不懂為什么事件不能移除?這個代碼就一直放下了,結果剛才看《javascript高級程序設計》才知道removeEventListener不能傳無參的構造函數,因為addEventListener可以給元素綁定多個事件,所以removeEventListener的時候找不到了!修改好的代碼如下:


         /**
         * 綁定事件
         **/ 
         var addEvent = function(obj, eventName, handle) {
        
         if(window.addEventListener) {
         obj.addEventListener(eventName, handle, false);
         }else {
         obj.attachEvent("on" + eventName, handle);
         }
         }
        
         var removeEvent = function (obj, eventName, handle){ 
         if (window.removeEventListener) {
         obj.removeEventListener(eventName, handle, false);
         }else if(window.detachEvent){ 
         obj.detachEvent("on" + eventName, handle); 
         }else {
         obj["on"+eventName] = null;
         }
        
         }; 
        
         var $ = function(id) {
         return "string" == typeof id ? document.getElementById(id) : id;
         }
        
         //js兼容性
         var page = {
         event: function (evt) {
         var ev = evt || window.event;
         return ev;
         },
         target: function(evt) {
         return evt.target || evt.srcElement;
         },
         pageX: function (evt) {
         var e = this.event(evt);
         return e.pageX || (e.clientX + document.body.scrollLeft - document.body.clientLeft);
         },
         pageY: function (evt) {
         var e = this.event(evt);
         return e.pageY || (e.clientY + document.body.scrollTop - document.body.clientTop);
         },
         layerX: function (evt) {
         var e = this.event(evt);
         return e.layerX || e.offsetX;
         },
         layerY: function (evt) {
         var e = this.event(evt);
         return e.layerY || e.offsetY;
         }
         } 
        
         var drag = function(obj) {
         obj.style.position="absolute";
         var mousedownFun, mousemoveFun, mouseupFun, x, y, target;
         mousedownFun = function(event){
         target = page.target(event);
         x = page.layerX(event);
         y = page.layerY(event); 
         
         addEvent(obj,"mousemove", mousemoveFun);
        
         addEvent(obj,"mouseup", mouseupFun);
         };
        
         mousemoveFun = function(event){
         var tx = page.pageX(event) - x;
         var ty = page.pageY(event) - y;
         target.style.left = tx + "px";
         target.style.top = ty + "px";
         };
        
         mouseupFun = function(event) {
         removeEvent(obj, "mousemove",mousemoveFun);
         removeEvent(obj, "mouseup",mouseupFun);
         }
         addEvent(obj,"mousedown", mousedownFun);
         }
        
         drag($("div2"));

        《javascript高級程序設計》不愧是大師寫的書,贊

        聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        DIV拖動及DOM2移除事件注意事項

        DIV拖動及DOM2移除事件注意事項:記錄這個沒別的意思,之前這段代碼貌沒有問題,但是調試的時候移除事件貌不能用源代碼如下: !--拖動div--!DOCTYPE html PUBLIC -//W3C//DTD XHTML 1.0 Transitional//EN http://www.w3.org/TR/xhtml1/DTD/xhtml1-tran
        推薦度:
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 91亚洲视频在线观看| 亚洲自偷精品视频自拍| 亚洲AV香蕉一区区二区三区| 又黄又爽又成人免费视频| 亚洲第一香蕉视频| 国产网站在线免费观看| 亚洲欧洲日韩国产一区二区三区| 亚洲另类古典武侠| 亚洲最大免费视频网| 亚洲情A成黄在线观看动漫软件 | 国产va精品免费观看| 亚洲美女视频网址| 在线免费观看污网站| 国产成A人亚洲精V品无码性色| 国产在线国偷精品免费看| 亚洲av日韩av不卡在线观看 | 亚洲中文无码av永久| 国产一级a毛一级a看免费视频| 国产成人麻豆亚洲综合无码精品 | 亚洲А∨精品天堂在线| 成av免费大片黄在线观看| 久久亚洲精品成人AV| a级毛片免费观看在线| 久久精品亚洲日本佐佐木明希| 五月婷婷在线免费观看| 亚洲欧美日韩中文二区| 亚洲国产精品国产自在在线 | 亚洲精品影院久久久久久| 美女被免费喷白浆视频| 色噜噜的亚洲男人的天堂| 成人女人A级毛片免费软件| 久久精品国产亚洲AV| 亚洲精品无码成人片久久| 黄页网站在线免费观看| 好男人视频社区精品免费| 一级毛片无遮挡免费全部| 91精品国产亚洲爽啪在线观看| 国产男女猛烈无遮挡免费视频| 嫩草在线视频www免费观看| 中文字幕亚洲激情| 亚洲免费观看网站|