业务需求:点击图片热区跳转到不同的链接地址,同时要自适应窗口尺寸的变化. 问题:热区坐标点不会随着窗口调整变化 解决思路:获取初始的坐标点与图片宽高的比例,然后用比例乘以调整后的窗口宽高,就获得了新的坐标点 根据初始坐标计算新坐标: function adjustPosition(position) { // 获取宽高 var pageWidth = document.body.clientWidth; var pageHeight = document.body.clientHeight; /…
在做自适应网页的时候,如果在图片中使用了热区map.图片可以通过样式实现:图片大小随页面变化,但是MAP中每个area的坐标并不能通过css直接实现自适应.这篇文章就介绍通过原生js来实现:MAP中每个area的坐标也随页面等比例的变化效果. map area 热区自适应的实现代码 html: <style> img{ display:block;max-width:1920;width: 100%;border: 0; } </style> <img src="s…
<img id='banner1' src="images/banner.jpg" usemap="#banner" border="0"/><map name="banner" > <area id='111' shape="rect" coords="x1,y1,x2,y2" href="/swt/"></map>…
1.<map>定义图像映射,图像映射(image-map)指带有可单击区域的一幅图像. 2.<area>定义图像映射中的区域,area元素永远嵌套在map元素内部,area元素可定义图像中的映射区域. shape="rect" 是指点击区域的形状矩形,coords="657,15,735,45",点击区域的四点坐标x1,y1,x2,y2,矩形:(左上角顶点坐标为(x1,y1),右下角顶点坐标为(x2,y2)),href="#&quo…
map,area标签 <img src ="planets.gif" alt="Planets" usemap ="#planetmap" /> <map name="planetmap"> <area shape="rect" coords="0,0,110,260" href="sun.htm" alt="Sun"…
css的area标签是不支持hover的,只有a标签才支持.li标签在IE浏览器下才支持,所以采用jquery的mouseenter和mouseleave事件完成.首先讲jQuery对应的事件:1.mouseenter事件 当鼠标指针穿过元素时,会发生 mouseenter 事件.该事件大多数时候会与mouseleave 事件一起使用. 与 mouseover 事件不同,只有在鼠标指针穿过被选元素时,才会触发 mouseenter 事件.如果鼠标指针穿过任何子元素,同样会触发 mouseover…
使用HTML元素的style.left,style.top,style.width,style.height以及width,height属性,都不能获得元素的真正位置与大小,这些属性取出来的都是原来的设置值,例如<table id="table1" width="500">,那么通过document.getElementByIdx_x("table1").width取出来的值永远都是500,而不管这个表格是否已经被撑大了:同时,通过d…
如上图所示一个页面有两个echarts图形:散点图和折线图,如果还写为: myChart.setOption(option); window.onresize = myChart.resize; 则只有一个图形可自适应窗口大小,另外一个则不能随窗口大小而改变图形大小, 解决办法为在每一个echarts图形页面将上面代码改为如下代码: myChart.setOption(option); window.addEventListener("resize",function(){ myCha…
默认a标签及其包含的html元素和map中的area(图片热区映射)在点击过后留有默认的蓝色边框,如下图 可以看到,蓝色的边框破坏了页面的整体美感,很多时候我们都是不需要的.通过设置相应的css可以去除点击过后的蓝色边框. map area { outline: none; } 效果如图,点击过后厌人的蓝色的边框不见了,页面也美美的了!…
https://github.com/stowball/jQuery-rwdImageMaps用这一个插件可自适应!!!…