离子hrefs无法在Android中打开

时间:2016-08-05 17:16:46

标签: javascript html json ionic-framework

我一直致力于使用来自服务器的JSON数据的应用。在这个JSON数据中,有一个由HTML组成的对象,其中通常包含一个URL。我还有一个对象,它只是一个URL,我加载到一个按钮,点击时应该打开URL。但问题是,当我单击Ionic View应用程序中的URL时,URL将在应用程序内部打开。但是,当我点击Android上的独立版本中的URL时,这些URL都不起作用。我试图完成的是这些URL在单击时在系统浏览器中打开。但我似乎无法找出为什么这不起作用

我的index.html中有Cordova脚本,还有从Cordova安装的InAppBrowser插件。

这是按钮:

<a class="button button-full button-assertive" ng-model="button" ng-click="openUrl({{vacature.url}})"> Sollicitatielink </a>

这是我的controllers.js中的函数:

$scope.openUrl = function(url) {

    window.open(url, '_system', 'location=yes');

};

这是JSON数据中的HTML:

<a href="url_here" target="_blank">via our website.</a>

我想知道你们是否可以帮助我解释为什么这不起作用。可能是我没有正确实现插件,如果是这样,我怎么能这样做呢?

提前致谢!

2 个答案:

答案 0 :(得分:0)

这就是我实现插件并为我工作的方式:

    <button class="button button-block button-stable" ng-click="openInBrowser('https://www.google.com')">
        GOOGLE
    </button>

然后在JS

myApp.controller('NameCtrl', ['$scope', '$ionicPlatform', '$cordovaInAppBrowser', function($scope, $ionicPlatform, $cordovaInAppBrowser){

            $scope.openInBrowser = function(extUrl){

                $ionicPlatform.ready(function() {
                    var options = {
                        location: 'yes',
                        clearcache: 'yes',
                        toolbar: 'yes'
                      };

                    $cordovaInAppBrowser.open(extUrl, '_system', options)
                    .then(function(event) {
                      // success
                    })
                    .catch(function(event) {
                      // error
                    });               

                }); // $ionicPlatform.ready
            };//--------------------------------------
        }]);

答案 1 :(得分:0)

我弄清楚为什么点击按钮后我的网址没有打开。这是我现在用来正常工作的代码。

这是按钮:

<button class="button button-full button-assertive" ng-click="openUrl('{{vacature.url}}')"> Sollicitatielink </button>

这是功能:

$scope.openUrl = function(extUrl) {

    window.open(extUrl, '_system');

};

修改

由于此代码,JSON HTML数据中的URL现在正在运行:

<a href="url_here" target="_blank">via our website.</a>

现在改为:

<a href="" onclick="window.open('url_here', '_system')">via our website.</a>

现在Ionic应用程序中的所有href都工作了!