Angular leaflet指令问题:除 map 外的其他部分在第二次进入页面时不显示。 我正在使用 ionic 和 Angular 传单指令来开发 map 功能。 在iPhone、iOS10上会出现此问题,而在浏览器上则正常。
如图1所示,右下角的面板在我第二次进入页面时不会显示,直到我点击 map 一两次。但当我第一次进入页面时,它就起作用了。
代码如下:
<div data-tap-disabled="true" class="map-container" style="height:100%">
<leaflet id='mapbox' defaults="defaults" tiles="tiles" lf-center="mapCenter" event-broadcast="events" maxbounds="maxbounds" markers="markersArray" width="100%" height="100%"></leaflet>
</div>
<div class="button-panel">
<div class="tripguide-icon-hotel" ng-click="selectSitesAround(1)" ng-class="{selected:hotelSelected, deselected:!hotelSelected}"></div>
<div class="tripguide-icon-poi" ng-click="selectSitesAround(2)" ng-class="{selected:poiSelected, deselected:!poiSelected}"></div>
<div class="tripguide-icon-dining" ng-click="selectSitesAround(3)" ng-class="{selected:diningSelected, deselected:!diningSelected}"></div>
<div class="tripguide-icon-list" ng-click="clickList()" ng-class="{deselected:!listSelected}"></div>
</div>
CSS:
.button-panel {
z-index: 1000;
opacity: 0.85;
width: 76px;
right: 80px;
bottom: 128px;
position: absolute;
}
最佳答案
我通过使用 ionic 指令而不是使用 div 解决了这个问题。
<ion-pane class="map-panel-pane">
<div class="button-panel">
<div class="tripguide-icon-hotel" ng-click="selectSitesAround(1)" ng-class="{selected:hotelSelected, deselected:!hotelSelected}"></div>
<div class="tripguide-icon-poi" ng-click="selectSitesAround(2)" ng-class="{selected:poiSelected, deselected:!poiSelected}"></div>
<div class="tripguide-icon-dining" ng-click="selectSitesAround(3)" ng-class="{selected:diningSelected, deselected:!diningSelected}"></div>
<div class="tripguide-icon-list" ng-click="clickList()" ng-class="{deselected:!listSelected}"></div>
</div>
</ion-pane>
关于javascript - Angular传单指令问题: other parts besides the map does't show the second time entering the page,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41604913/