在系统浏览器中打开所有外部应用程序链接

时间:2017-02-22 16:43:35

标签: javascript ionic-framework ng-map

我有一个Ionic 1应用程序,它通过ngMap指令包含谷歌地图。这非常有效。

当用户点击" Credits" 地图中的元素和整个应用程序被重定向到Google地图信用页面 - 因为它是一个离子应用程序,用户无法返回。

在Ionic / Angular(不是jQuery)中是否有一种方法可以截取这些任意链接,以便它们在应用内或系统浏览器中打开?

1 个答案:

答案 0 :(得分:0)

通常按如下方式完成:

http://codepen.io/anon/pen/MpgrdN

function isExternal(href) {
  return true;
}
document.body.addEventListener('click', function(e) {
  var maybeA = $(e.target).closest('a');
  if (maybeA.length && isExternal(maybeA[0].getAttribute('href'))) {
      // window.open()
      console.log('prevented');
      e.preventDefault();
  }
});

使用jQuery closest函数,如果页面独立实现上没有jQuery DOM / pure JavaScript solution to jQuery.closest() implementation?