3030 z-index : 100 ;
3131 border-radius : 4px ;
3232 }
33+
34+ .layerItems {
35+ border : 1px solid # 999 ;
36+ display : none;
37+ position : absolute;
38+ z-index : 1000 ;
39+ background-color : rgba (255 , 255 , 255 , 0.5 );
40+ padding-right : 20px ;
41+ }
3342 </ style >
3443</ head >
3544< body >
3847 < h5 class ='panel-title text-center ' data-i18n ="resources.text_cartoCSSHightlight "> </ h5 > </ div >
3948 < div class ='panel-body content '>
4049 < input type ="button " class ="btn btn-default " data-i18n ="[value]resources.btn_cancelHighlight "
41- onclick ="layer.unHightlightFeatures();closeInfoWin(); "/>
42- < ul id ='layerItems ' style ="display: none;position: absolute; "> </ ul >
50+ onclick ="closeInfoWin(); "/>
4351 </ div >
4452</ div >
53+ < div class ="layerItems "> 选择需要高亮的要素:
54+ < ul id ='layerItems '> </ ul >
55+ </ div >
56+
4557< div id ="map "> </ div >
4658< script type ="text/javascript " include ="bootstrap,widgets.alert " src ="../js/include-web.js "> </ script >
4759< script type ="text/javascript " exclude ="iclient-classic " src ="../../dist/classic/include-classic.js "> </ script >
@@ -57,7 +69,7 @@ <h5 class='panel-title text-center' data-i18n="resources.text_cartoCSSHightlight
5769 }
5870</ script >
5971< script >
60- var map , layer , layerItems , infowin , featureInfoes ,
72+ var map , layer , layerItems , layerItemsContainer , infowin , featureInfoes ,
6173 host = window . isLocal ? window . server : "http://support.supermap.com.cn:8090" ,
6274 url = host + "/iserver/services/map-china400/rest/maps/China" ;
6375 init ( ) ;
@@ -67,6 +79,7 @@ <h5 class='panel-title text-center' data-i18n="resources.text_cartoCSSHightlight
6779 widgets . alert . showAlert ( resources . msg_supportCanvas , false ) ;
6880 return ;
6981 }
82+ layerItemsContainer = document . getElementsByClassName ( 'layerItems' ) [ 0 ] ;
7083 layerItems = document . getElementById ( 'layerItems' ) ;
7184 map = new SuperMap . Map ( "map" , {
7285 controls : [
@@ -96,29 +109,31 @@ <h5 class='panel-title text-center' data-i18n="resources.text_cartoCSSHightlight
96109 while ( layerItems . firstChild ) {
97110 layerItems . removeChild ( layerItems . firstChild ) ;
98111 }
99- layerItems . style . top = evt . clientY + 'px' ;
100- layerItems . style . left = evt . clientX + 'px' ;
112+ layerItemsContainer . style . top = evt . clientY + 'px' ;
113+ layerItemsContainer . style . left = evt . clientX + 'px' ;
101114 for ( var i = 0 , len = featureInfoes . length ; i < len ; i ++ ) {
102115 var li = document . createElement ( 'li' ) ;
103116 li . innerHTML = featureInfoes [ i ] . cartoLayer . layerName ;
117+ console . log ( featureInfoes [ i ] ) ;
104118 li . setAttribute ( 'data-index' , i ) ;
105119 layerItems . appendChild ( li ) ;
106120 if ( i !== ( len - 1 ) ) {
107121 li . style . borderBottom = '1px solid' ;
108122 }
109123 li . onclick = liClickHandle ;
110124 }
111- layerItems . style . display = 'block' ;
125+
126+ layerItemsContainer . style . display = 'block' ;
112127 } else {
113- layerItems . style . display = 'none' ;
128+ layerItemsContainer . style . display = 'none' ;
114129 }
115130
116131 } ,
117132 'rightclick' : function ( ) {
118- layerItems . style . display = 'none' ;
133+ layerItemsContainer . style . display = 'none' ;
119134 } ,
120135 'move' : function ( ) {
121- layerItems . style . display = 'none' ;
136+ layerItemsContainer . style . display = 'none' ;
122137 }
123138 } ) ;
124139 }
@@ -131,7 +146,7 @@ <h5 class='panel-title text-center' data-i18n="resources.text_cartoCSSHightlight
131146 layer . highlightFeatures ( featureInfoes [ index ] ) ;
132147 var lonlat = map . getLonLatFromViewPortPx ( featureInfoes . xy ) ;
133148 openPopup ( featureInfoes [ index ] . feature , lonlat ) ;
134- layerItems . style . display = 'none' ;
149+ layerItemsContainer . style . display = 'none' ;
135150 }
136151
137152
@@ -171,6 +186,7 @@ <h5 class='panel-title text-center' data-i18n="resources.text_cartoCSSHightlight
171186 }
172187
173188 function closeInfoWin ( ) {
189+ layer . unHightlightFeatures ( ) ;
174190 if ( infowin ) {
175191 try {
176192 infowin . hide ( ) ;
0 commit comments