重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
给你做一个例子,保存成html文件,用浏览器打开,看看是不是你想要的功能。JavaScript 测试#map_grid {background: url("
目前成都创新互联已为上1000+的企业提供了网站建设、域名、网站空间、网站托管维护、企业网站设计、伊吾网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。
") no-repeat;width:800;height:650;margin:0;padding:0;border:1px dashed #FF0000;border-collapse:collapse;border-spacing:0;}#map_grid td {border: 1px dashed #FF0000;text-align:center;vertical-align:middle;}.active {background-color: #00FF00;opacity: 0.30;}#lblInfo {position: absolute;left: 0;top: 0;}function getMousePosition(e){e = e || window.event;var x = 0, y = 0;if (e.pageX || e.pageY) {x = e.pageX;y = e.pageY;} else if (e.clientX || e.clientY) {x = e.clientX + document.body.scrollLeft + document.documentElement.scrollLeft;y = e.clientY + document.body.scrollTop + document.documentElement.scrollTop;}return { 'x': x, 'y': y};}$(document).ready(function(){$mapGrid = $('#map_grid');$info = $('#lblInfo');var nHgrid = 40;var height = 100/nHgrid + '%';var nWgrid = 30;var width = 100/nWgrid + '%';var gridHtml = '';for(var i = 0; i gridHtml += '';for(var j = 0; j gridHtml += '';}gridHtml += '';}$mapGrid.html(gridHtml);var height = $mapGrid.height();var width = $mapGrid.width();var mapPos = $mapGrid.position();$mapGrid.mousemove(function(e){var pos = getMousePosition(e);var x = Math.round(pos.x - mapPos.left);var y = Math.round(pos.y - mapPos.top);$info.css({left:pos.x + 20, top:pos.y}).html(x + ',' + y);}).mouseover(function(e){$(e.target).addClass('active');}).mouseout(function(e){$(e.target).removeClass('active');});});
看了一下,你这种情况用根据鼠标位置来定位的div层来做好像不合适,你想想如果鼠标在文本框上时你不是也要将层放到文本框上吧,你可以看看别人的网站 上的,都是单独做的,这样体验才会好你想偷懒的话可以这样,用表格布局,后面多加一列,专门放显示信息的,然后根据事件的源对象,将信息显示到指定的单元格中另,function getpostion(e)//为了同时支持IE和FireFox,e必须为event对象要想将div位置固定的话需要将其posistion属性设为absolute;ps:晕死,竟然让我打三遍
是指Script生成的iframe吧?理论上,iframe内的页面和parent页只有上下级关系,所以鼠标在iframe内的坐标应该不能在父页获取。你可以用document.getElementById("iframe1").contentDocument得到iframe的document对象,之后操作它得到iframe内的坐标,再与父页中iframe标签左上角坐标叠加就可以。
你想要现成的是吧。好的,我给你写,以下代码复制下来,运行就能出效果
!DOCTYPE html
html
head
meta charset="utf-8" /
title/title
meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no" /
/head
body
div id="allmap" style='width:100%; height:500px;'/div
div class="info"/div
script src=";ak=ysHscdqZCVZXG4ipXgXou2Wt"/script
script
var map = new BMap.Map("allmap");
var geol = new BMap.Geolocation();//Geolocation 就是用来获取到当前设备的经纬度,获取设备地理位置的可编程的对象
geol.getCurrentPosition(function (rs) {
if (this.getStatus() == BMAP_STATUS_SUCCESS) {
//初始化
var point = new BMap.Point(rs.point.lng, rs.point.lat);
map.centerAndZoom(point, 60);
// 创建标注,为要查询的地址对应的经纬度
var marker = new BMap.Marker(point);
map.addOverlay(marker);
//坐标转地名
var geoc = new BMap.Geocoder();
geoc.getLocation(point, function (rp) {
var addComp = rp.addressComponents;
document.querySelector('.info').innerHTML=addComp.province + ", " + addComp.city + ", " + addComp.district+ ", " + addComp.street + ", " + addComp.streetNumber
});
}
}, { enableHighAccuracy: true })
/script
/body
/html