如何在不创建新对象的情况下改变nokia.maps.map.StandardMarker的颜色
How change the color of a nokia.maps.map.StandardMarker without do a new object?
我一直在尝试这样做:laststmarker是nokia.maps.map.StandardMarkerncolor = #0000FF
laststmarker.brush=ncolor;
laststmarker.brush="{color:'"+ncolor+"'}";
laststmarker.brush={color:ncolor};
和其他东西,我如何改变颜色而不删除并再次添加到地图?
这里需要注意的重要事情是笔刷是不可变的-这意味着你不能直接更新参数-你需要使用setter,例如marker.set("brush" , { color :"#FF0000"});
-这通常后面跟着map.update(-1,0);
,以便刷新映射。
当鼠标指针悬停在标记上时,下面的示例突出显示标记。你需要使用你自己的应用id和令牌来让它工作。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<meta http-equiv="X-UA-Compatible" content="IE=7; IE=EmulateIE9" />
<base href="http://www.wrc.com/" />
<title>Highlighing a marker</title>
<meta name="description" content="" />
<meta name="keywords" content="" />
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
<script language="javascript" src="http://api.maps.nokia.com/2.2.4/jsl.js" type="text/javascript" charset="utf-8"></script>
</head>
<body>
<p> Place your pointer over the marker to highlight it.</p>
<div id="gmapcanvas" style="width:600px; height:600px;" > </div><br/><br/>
<script type="text/javascript">
// <![CDATA[
/////////////////////////////////////////////////////////////////////////////////////
// Don't forget to set your API credentials
//
// Replace with your appId and token which you can obtain when you
// register on http://api.developer.nokia.com/
//
nokia.Settings.set( "appId", "YOUR APP ID GOES HERE");
nokia.Settings.set( "authenticationToken", "YOUR AUTHENTICATION TOKEN GOES HERE");
/////////////////////////////////////////////////////////////////////////////////////
map = new nokia.maps.map.Display(document.getElementById('gmapcanvas'), {
'components': [
// Behavior collection
new nokia.maps.map.component.Behavior() ],
'zoomLevel': 5, // Zoom level for the map
'center': [41.0125,28.975833] // Center coordinates
});
// Remove zoom.MouseWheel behavior for better page scrolling experience
map.removeComponent(map.getComponentById("zoom.MouseWheel"));
var normalMarker = new nokia.maps.map.StandardMarker(new nokia.maps.geo.Coordinate(41.0125,28.975833), {brush: {color: "#FF0000"}});
normalMarker.addListener("mouseover" , function(evt) {
normalMarker.set("brush" , { color :"#0000FF"});
map.update(-1,0);
}, false);
normalMarker.addListener("mouseout" , function(evt) {
normalMarker.set("brush" , { color :"#FF0000"});
map.update(-1,0);
}, false);
map.objects.add(normalMarker);
// ]]>
</script>
</body>
</html>
相关文章:
- 在不改变状态的情况下,根据减少器中的给定索引更改嵌套数组值
- 在不改变循环速度的情况下更改更新速度
- 另一个“;如何在不离开网页的情况下改变URL”;
- 在套接字中发送文件.在不改变用户窗口位置的情况下执行IO操作
- 在不改变值的情况下格式化输入类型文本
- 在不改变整个状态的情况下改变state数组(REACT / REDUX)
- 如何在不影响其他模态的情况下用CSS改变模态的宽度?
- 如何克隆一个XML节点,改变其中的值,并在不改变所有节点的情况下添加它
- 在不改变元素大小的情况下放大元素
- 如何在没有第三方JS库的情况下改变文本区域滚动条的颜色
- 有一种方法,我可以改变骆驼的情况下,以空格分隔的单词变量的内容
- 在不离开页面的情况下改变按钮的颜色
- 使用JavaScript在不改变布局的情况下切换选项卡
- 如何在不调用函数的情况下改变jQuery的执行上下文
- 如何在不复制的情况下改变对象
- 在不改变HTML的情况下将列表结构转换为手风琴
- 如何在不改变a的定义的情况下让Flow相信类型a是抽象类型B的子类型
- 谷歌地图如何在不重新加载和不使用历史API的情况下改变其URL ?
- 如何在不创建新对象的情况下改变nokia.maps.map.StandardMarker的颜色
- 在不重新加载的情况下改变Li中的Dom元素