Javascript firefox中的角度递归错误太多

Javascript firefox中的角度递归错误太多,javascript,angularjs,recursion,Javascript,Angularjs,Recursion,我正在开发一个应用程序,需要将用户提供的地址转换为lat lng并更新谷歌地图。我使用angular js 1.0.0版,问题是firefox中的递归错误太多 app.controller("BasicMapController", function($scope, $timeout){ ....... angular.extend($scope, { ....... checking_address: false// curently trying to get lat long from a

我正在开发一个应用程序,需要将用户提供的地址转换为lat lng并更新谷歌地图。我使用angular js 1.0.0版,问题是firefox中的递归错误太多

app.controller("BasicMapController", function($scope, $timeout){
.......
angular.extend($scope, {
.......
checking_address: false// curently trying to get lat long from address
});
......
我必须创建一个ngBlur指令,因为1.0.0没有它,升级不是一个选项,因为有太多的其他代码中断

app.directive('ngBlur', function() {
return function( scope, elem, attrs ) {
elem.bind('blur', function() {
scope.$apply(attrs.ngBlur);
});
};
}))

在我的页面上,我向相关文本区域添加了ng blur=“onblur\”,然后在我的控制器中定义了相关函数:

$scope.onblur_ = function ($event) {
    if ($scope.checking_address)
        return;
    var map_scope = angular.element($('.google-map')).scope();
    var address = document.getElementById("id_address").value;
    if ( !! !address)
        return;
    $scope.checking_address = true;
    var geocoder = new google.maps.Geocoder();
    geocoder.geocode({
        'address': address
    }, function (results, status) {
        if (status == google.maps.GeocoderStatus.OK) {
            map_scope.map._instance.panTo(results[0].geometry.location);
            if ($scope.markers[0] == undefined) {
                $scope.markers[0] = new google.maps.Marker({
                    map: map_scope.map._instance,
                    position: results[0].geometry.location
                });
            } else
                $scope.markers[0].setPosition(results[0].geometry.location);
        }
        $scope.checking_address = false;
    });
}
该代码在Opera和Chromium中运行良好。关于什么可能是错误的,或者我如何解决这个问题,有什么想法吗?

好吧,自从1.0.0(几乎2年前)以来,Angular中已经有很多错误修复,可能是