2016-08-03 5 views
0

AngularJS(Ionic)でWikitudeとGoogleのマップを使って作業しています。自分のコントローラでInfoWindowのng-clickイベントを設定する必要があります。私のコード:コントローラでng-clickでhtmlを定義するAngular

google.maps.event.addListenerOnce($scope.map, 'idle', function(){ 

    var marker = new google.maps.Marker({ 
     map: $scope.map, 
     animation: google.maps.Animation.DROP, 
     position: latLng 
    }); 

    var infoWindow = new google.maps.InfoWindow({ 
     content: '<a href="#" ng-click="launchAR(\'my_world_pls\')">CATCH!</a>' 
    }); 

    google.maps.event.addListener(marker, 'click', function() { 
     infoWindow.open($scope.map, marker); 
    }); 

}); 
+0

大丈夫です。コードを実行するとどうなりますか? – Srijith

+0

何も表示されず、マーカーと情報ウィンドウがレンダリングされます。しかし、リンクはアクティブではありません –

+0

'a'タグで' href'を削除して試すことはできますか? – Srijith

答えて

0

コントローラに直接作成されたHTMLを直接リンクすることはできません。これには2つのオプションがあります。link

その他のオプションはjQueryを使用することです。このためにをanchor elementに付け、IDで要素を見つけてクリックイベントを添付します。

+0

jQueryを使ったその解決策は良いと思います。しかし、どのように角度のイベントを添付する:$ scope.launchAR = function(){}; –

0

解決済み。

google.maps.event.addListenerOnce($scope.map, 'idle', function() { 

    var marker = new google.maps.Marker({ 
     map: $scope.map, 
     animation: google.maps.Animation.DROP, 
     position: latLng 
    }); 

    google.maps.event.addListener(marker, 'click', function() { 
     $scope.launchAR('mana_catch_and_eat'); 
    }); 

    }); 
関連する問題