qq.maps.Label 类
继承自MVCObject类
文字标签,可以设置简单的样式。
构造函数
| 构造函数 |
|---|
Label(options:LabelOptions)
|
方法
| 方法 | 返回值 | 说明 |
|---|---|---|
getContent()
|
String
|
返回Label的内容。 |
getMap()
|
Map
|
返回Label所在的map对象。 |
getPosition()
|
LatLng
|
返回Label的位置。 |
getVisible()
|
Boolean
|
返回Label是否可见。 |
getZIndex()
|
Number
|
返回Label的zIndex。 |
setContent(content:String)
|
none
|
设置Label的内容。 |
setMap(map:Map)
|
none
|
设置Label所在的map对象。 |
setPosition(position:LatLng)
|
none
|
设置Label的位置。 |
setStyle(style:Object)
|
none
|
设置Label样式,例如:{color:"#000000",backgroundColor:"red"}。 |
setVisible(visible:Boolean)
|
none
|
设置Label的可见性。 |
setZIndex(zIndex:Number)
|
none
|
设置Label的zIndex。 |
setOptions(options:LabelOptions)
|
none
|
设置Label参数。 |
事件
| 事件名 | 参数 | 说明 |
|---|---|---|
content_changed
|
none
|
Label的内容变化后触发此事件。 |
map_changed
|
none
|
Label所属地图变化后会触发此事件。 |
content_changed
|
none
|
Label的位置变化后触发此事件。 |
visible_changed
|
none
|
Label可见性变化后触发此事件。 |
content_changed
|
none
|
Label的zIndex值变化后触发此事件。 |
click
|
event:MouseEvent
|
点击Label后触发此事件。 |
mousedown
|
event:MouseEvent
|
当鼠标在Label上按下后触发此事件。 |
mouseout
|
event:MouseEvent
|
当鼠标移出Label时触发此事件。 |
mouseover
|
event:MouseEvent
|
当鼠标进入Label时触发此事件。 |
mouseup
|
event:MouseEvent
|
当鼠标在Label上释放时触发此事件。 |
rightclick
|
event:MouseEvent
|
当鼠标在Label上右击后触发此事件。 |
实例
本示例中,介绍如何使用折线覆盖物的方法
var init = function() {
var center = new qq.maps.LatLng(39.916527, 116.397128);
var map = new qq.maps.Map(document.getElementById('container'), {
center: center,
zoom: 13
});
var label = new qq.maps.Label({
position: center,
map: map,
content: '文本标注'
});
//setMap
var mapM = document.getElementById("mapM");
qq.maps.event.addDomListener(mapM, "click", function() {
label.setVisible(true);
if (label.getMap()) {
label.setMap(null);
} else {
label.setMap(map);
}
});
//setPosition
var flag = true;
var setP = document.getElementById("setP");
var latLng = new qq.maps.LatLng(39.908709, 116.397519);
qq.maps.event.addDomListener(setP, "click", function() {
label.setMap(map);
label.setVisible(true);
if (flag) {
flag = false;
label.setPosition(latLng);
} else {
flag = true;
label.setPosition(center);
}
});
//setContent
var flagC = true;
var content = document.getElementById("content");
var latLng = new qq.maps.LatLng(39.908709, 116.397519);
qq.maps.event.addDomListener(content, "click", function() {
label.setMap(map);
label.setVisible(true);
if (flagC) {
flagC = false;
label.setContent("内容改变");
} else {
flagC = true;
label.setContent("文本标注");
}
});
//setVisible
var visibleF = document.getElementById("visibleF");
qq.maps.event.addDomListener(visibleF, "click", function() {
label.setMap(map);
if (label.getVisible()) {
label.setVisible(false);
} else {
label.setVisible(true);
}
});
//setStyle
var cssStyF = true;
var cssSty = document.getElementById("cssSty");
var latLng = new qq.maps.LatLng(39.908709, 116.397519);
var cssC = {
color: "#f00",
fontSize: "16px",
fontWeight: "bold"
};
var cssP = {
color: "#000",
fontSize: "14px",
fontWeight: "normal"
};
qq.maps.event.addDomListener(cssSty, "click", function() {
label.setMap(map);
label.setVisible(true);
if (cssStyF) {
cssStyF = false;
label.setStyle(cssC);
} else {
cssStyF = true;
label.setStyle(cssP);
}
});
}
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no" />
<title>文本标记</title>
<style type="text/css">
* {
margin: 0px;
padding: 0px;
}
body,
button,
input,
select,
textarea {
font: 12px/16px Verdana, Helvetica, Arial, sans-serif;
}
#info {
width: 603px;
padding-top: 3px;
overflow: hidden;
}
.btn {
width: 93px;
}
</style>
<script charset="utf-8" src="https://map.qq.com/api/js?v=2.exp&key=OB4BZ-D4W3U-B7VVO-4PJWW-6TKDJ-WPB77"></script>
<script>
var init = function() {
var center = new qq.maps.LatLng(39.916527, 116.397128);
var map = new qq.maps.Map(document.getElementById('container'), {
center: center,
zoom: 13
});
var label = new qq.maps.Label({
position: center,
map: map,
content: '文本标注'
});
//setMap
var mapM = document.getElementById("mapM");
qq.maps.event.addDomListener(mapM, "click", function() {
label.setVisible(true);
if (label.getMap()) {
label.setMap(null);
} else {
label.setMap(map);
}
});
//setPosition
var flag = true;
var setP = document.getElementById("setP");
var latLng = new qq.maps.LatLng(39.908709, 116.397519);
qq.maps.event.addDomListener(setP, "click", function() {
label.setMap(map);
label.setVisible(true);
if (flag) {
flag = false;
label.setPosition(latLng);
} else {
flag = true;
label.setPosition(center);
}
});
//setContent
var flagC = true;
var content = document.getElementById("content");
var latLng = new qq.maps.LatLng(39.908709, 116.397519);
qq.maps.event.addDomListener(content, "click", function() {
label.setMap(map);
label.setVisible(true);
if (flagC) {
flagC = false;
label.setContent("内容改变");
} else {
flagC = true;
label.setContent("文本标注");
}
});
//setVisible
var visibleF = document.getElementById("visibleF");
qq.maps.event.addDomListener(visibleF, "click", function() {
label.setMap(map);
if (label.getVisible()) {
label.setVisible(false);
} else {
label.setVisible(true);
}
});
//setStyle
var cssStyF = true;
var cssSty = document.getElementById("cssSty");
var latLng = new qq.maps.LatLng(39.908709, 116.397519);
var cssC = {
color: "#f00",
fontSize: "16px",
fontWeight: "bold"
};
var cssP = {
color: "#000",
fontSize: "14px",
fontWeight: "normal"
};
qq.maps.event.addDomListener(cssSty, "click", function() {
label.setMap(map);
label.setVisible(true);
if (cssStyF) {
cssStyF = false;
label.setStyle(cssC);
} else {
cssStyF = true;
label.setStyle(cssP);
}
});
}
</script>
</head>
<body onload="init()">
<div style="width:603px;height:300px" id="container"></div>
<div id="info" style="margin-top:10px;">
<button id="mapM" class="btn">setMap</button>
<button id="setP" class="btn">setPosition</button>
<button id="content" class="btn">setContent</button>
<button id="visibleF" class="btn">setVisible</button>
<button id="cssSty" class="btn">setStyle</button>
</div>
</body>
</html>