0

我有一个 Ionic 应用程序,它显示用户输入的文本。在文本中允许使用一些 HTML。例如,这是允许的: <a href="http://www.google.com">Go to Google</a>

我正在使用所见即所得的编辑器让用户输入文本。https://github.com/fraywing/textAngular

显示时,我希望在手机的默认浏览器(IOS 上的 Safari)中打开链接。

为了显示文本,我使用了 text-angular 的ta-bind指令:

<div ta-bind ng-model="article.contents"></div>

其中 article.contents 具有 HTML 文本(用户输入)。

虽然这在 Android 中运行良好,但在 IOS 中,链接会在 webview 中打开并破坏应用程序。

还有其他帖子提到应用内浏览器插件并更改链接,window.open('URL', '_blank')但我无法做到这一点。

请注意,文本是在另一个“管理员”应用程序中输入的,该应用程序是一个网络应用程序(也是 Angualr 应用程序)。

我该如何解决这个问题?

4

1 回答 1

0

我通过使用 inapp 浏览器并创建自定义指令而不是使用 ta-bind 解决了这个问题。

.directive('customcompile', ['$compile', function ($compile) {
   return function(scope, element, attrs) {
     scope.$watch(
       function(scope) {
         return scope.$eval(attrs.customcompile);
       },
     function(value) {
       element.html(value);
       $compile(element.contents())(scope);
     }
)};
}])

我还必须使用另一个指令来解决之前由 ta-bind 处理的 youtube 视频问题。

于 2016-01-06T16:18:47.313 回答