我有一张地图,上面有一些标记。单击时,每个标记都打开一个覆盖 div。
<div class="map" ng-init="loadall()">
<a ng-click="details.show=!details.show" href="#/dealer/{{marker.id}}" class="marker" style="left:{{marker.coordleft}}px;top:{{marker.coordtop}}px" ng-repeat="marker in dealer"></a>
</div>
它正在打开这个 div:
<div ng-show="details.show">
<div ng-view></div>
</div>
问题:
如果 div 已经打开(details.show == true),我的客户注意到,如果您将其保持打开状态并单击地图上的其他标记,则 div 会再次关闭。
我想要实现
的目标:如果 div 已经打开,只需将新内容加载到 ng-view 中,而无需再次关闭并重新打开 div。
这可能吗?
编辑:
我的路线:
app.config(['$routeProvider', function($routeProvider) {
$routeProvider.
when('/dealer/:id', {templateUrl: 'files/tpl/dealer-details.html?20', controller: 'DealerDetailsCtrl', activetab: 'details'}).
when('/dealermessage/:id', {templateUrl: 'files/tpl/dealer-message.html?124', controller: 'DealerMessageCtrl', activetab: 'message'}).
when('/dealersendmessage/:id', {templateUrl: 'files/tpl/dealer-details.html?8', controller: 'DealerDetailsCtrl', activetab: 'details'}).
otherwise({redirectTo: '/dealer'});
}]);
如果单击了标记,则正在加载第一个路由和控制器。这有帮助吗?
编辑第 2 号:
“标记/div 切换现在正在工作,但我现在有一个打开的叠加层的奇怪行为。
示例:
当我打开“Marker 1”时,div 可以正常打开。当“Marker 1”的 div 打开时,我可以点击“Marker 2”,div 会刷新为“Marker 2”的内容。但是当我现在点击“Marker 1”时,div 突然关闭了。
我怎样才能阻止它?