zoukankan      html  css  js  c++  java
  • map area 热区自适应的实现代码

    map area 热区自适应的实现代码

    html:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <style>
    img{
        display:block;max-1920; 100%;border: 0;
    }  
    </style>
    <img src="src/1.jpg" usemap="#planetmap"/>
    <map name="planetmap" id="planetmap">
        <area shape="rect" coords="0,0,110,200" href="#"/>
        <area shape="rect" coords="50,50,200,200" href="#"/>
    </map>

      

    js:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    <script>
    var initwidth=null,//初始图片宽度
        area=document.getElementsByTagName('area'),
        initarea=null;//初始数据保存
         
    function init(){//初始化
        initwidth=1920;
        initarea=new Array(area.length-1);
        for(var i=0;i<area.length;i++){
            initarea[i]=area[i].getAttribute("coords");
        }
    }
     
    function setCoords(){//根据分辨率自适应热区坐标
        var width=document.body.offsetWidth,
            percent=width/initwidth;
        for(var i=0;i<area.length;i++){
            var coords=initarea[i],
                arr=coords.split(",");
            for(var j=0;j<arr.length;j++){
                arr[j] *= percent;   
            }
            area[i].setAttribute("coords",arr.join(","));
        }
    }
    //使用
    init();
    window.onresize = function () { 
        setCoords();
    </script>
  • 相关阅读:
    Spring AOP 代理创建方式
    VS全局搜索
    uni-app中添加AES加密
    中国菜刀"连接被重置"问题解决
    Windows go get下载包失败问题解决
    搭建vulhub 漏洞环境及安装Docker和docker-compose
    DedeCMS 5.7通用重装漏洞分析
    各就各位,预备,GO!
    ARL资产灯塔系统分组资产导出脚本
    玩《巫师3》需要了解的背景知识
  • 原文地址:https://www.cnblogs.com/php12-cn/p/14498906.html
Copyright © 2011-2022 走看看