整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          獲取 HTML 元素的位置坐標

          獲取 HTML 元素的位置坐標,可以使用 JavaScript 中的 DOM 操作來實現。下面是一個示例代碼,展示如何使用 JavaScript 獲取指定類名的元素的位置坐標:

          htmlCopy code
          <!DOCTYPE html>
          <html>
          <body>
            <div class="my-element">This is a div element.</div>
          
            <script>
              // 獲取具有指定類名的元素
              var element = document.querySelector('.my-element');
          
              // 獲取元素的位置信息
              var rect = element.getBoundingClientRect();
          
              // 輸出元素的位置坐標
              console.log('元素的左上角坐標:', rect.left, rect.top);
              console.log('元素的右下角坐標:', rect.right, rect.bottom);
              console.log('元素的寬度和高度:', rect.width, rect.height);
            </script>
          </body>
          </html>

          在上述代碼中,我們首先使用 querySelector() 方法獲取具有指定類名 .my-element 的元素。然后,使用 getBoundingClientRect() 方法獲取該元素的位置信息,返回一個包含左上角坐標、右下角坐標、寬度和高度等屬性的 DOMRect 對象。

          最后,我們使用 console.log() 方法將元素的位置坐標輸出到控制臺。您可以根據實際需要使用這些坐標信息。

          請注意,獲取的位置坐標是相對于視口(viewport)的坐標,而不是相對于整個頁面的坐標。如果需要獲取相對于頁面的坐標,可以結合 window.scrollXwindow.scrollY 屬性進行計算。

          .獲取元素在文檔上的坐標

          function DocuemntHtmlPageXY (elem) {
           var rect = elem.getBoundingClientRect();
           var scrollTop = window.scrollTop || (document.documentElement && document.documentElement.scrollTop) || document.body.scrollTop || 0;
           var scrollLeft = window.scrollLeft || (document.documentElement && document.documentElement.scrollLeft) || document.body.scrollLeft || 0;
           var html = document.documentElement || document.getElementsByTagName_r('html')[0];
           //修復ie6 7 下的瀏覽器邊框也被算在 boundingClientRect 內的 bug
           var deviation = html.getBoundingClientRect();
           //修復 ie8 返回 -2 的 bug
           deviation = { //FF 不允許修改返回的對象
           left: deviation.left < 0 ? 0 : deviation.left,
           top: deviation.top < 0 ? 0 : deviation.top
           };
           return {
           left: rect.left + scrollLeft - deviation.left,
           top: rect.top + scrollTop - deviation.top
           };
           }
          

          2.舉例如下:

          近在做一個微信端的應用,其中有一個功能是這樣的功能:不管怎么移動百度地圖都能獲取到屏幕中心點的坐標。這種功能在ios端和android端通過一些邏輯計算很容易就實現了,但是在web端想要動態的獲取地圖屏幕中心點的坐標,通過計算就不是那么容易實現的了。通過翻找百度地圖手冊收發現百度地圖在js接口中提供的有一個方法,下面只列出關鍵性的代碼:

          var map = new BMap.Map("allmap");

          map.centerAndZoom(new BMap.Point(116.4035,39.915), 14);

          var bs = map.getBounds(); //獲取可視區域

          var bssw = bs.getSouthWest(); //可視區域左下角

          var bsne = bs.getNorthEast(); //可視區域右上角

          //alert("當前地圖可視范圍是:" + bssw.lng + "," + bssw.lat + "到" + bsne.lng + "," + bsne.lat);

          var pt = bs.getCenter(); //獲取地圖中心點

          //根據中心點坐標添加彈跳動畫marker

          var point = new BMap.Point(pt.lng, pt.lat);

          var marker = new BMap.Marker(point); // 創建標注

          map.addOverlay(marker);// 將標注添加到地圖中

          marker.setAnimation(BMAP_ANIMATION_BOUNCE);


          主站蜘蛛池模板: 国产在线视频一区二区三区98 | 韩国美女vip福利一区| 精品国产一区二区三区免费看| 在线播放国产一区二区三区| 亚洲av乱码一区二区三区| 国产精品分类视频分类一区| 国产伦精品一区二区三区女| 亚洲AV成人精品日韩一区| 日本一区中文字幕日本一二三区视频 | 人妻互换精品一区二区| 视频精品一区二区三区| 国产一区二区三区乱码| 亚洲AV成人精品一区二区三区| 丰满岳乱妇一区二区三区| 无码精品人妻一区二区三区免费看| 色狠狠色噜噜Av天堂一区| 国产精品 一区 在线| 久久精品国产一区二区三区| 狠狠做深爱婷婷综合一区| 亚洲日韩国产一区二区三区| 亚洲Aⅴ无码一区二区二三区软件 亚洲AⅤ视频一区二区三区 | 精品一区二区三区四区在线| 国产亚洲综合精品一区二区三区| 国产99视频精品一区| 亚洲AV成人一区二区三区在线看| 一区二区三区观看免费中文视频在线播放 | 免费萌白酱国产一区二区| 无码中文字幕人妻在线一区二区三区 | 真实国产乱子伦精品一区二区三区| 日韩一区二区三区免费体验| 亚洲综合一区无码精品| 精品爆乳一区二区三区无码av| 精品无码一区二区三区爱欲 | 老鸭窝毛片一区二区三区| 波多野结衣AV一区二区三区中文| 人妻互换精品一区二区| 精品国产AⅤ一区二区三区4区 | 奇米精品一区二区三区在| 无码国产精成人午夜视频一区二区 | 国产主播一区二区三区在线观看| 亚洲av区一区二区三|