[英]Ionic framework makes 'open in new tab' option unavailable for ng-href in ios devices
我试图在移动设备中实现功能,其中点击将打开'codepen.io'(通过ng-click处理)并点击并按住将打开上下文菜单,其中包含'打开新标签'选项,这导致' stackoverflow.com'(由ng-href处理)
这是代码:HTML:
<head>
<link href="https://code.ionicframework.com/nightly/css/ionic.css" rel="stylesheet">
<script src="https://code.ionicframework.com/nightly/js/ionic.bundle.js"> </script>
</head>
<body>
<div ng-app="myApp">
<div ng-controller="MainController as main">
<a ng-href="https://stackoverflow.com/" ng-click="$event.preventDefault(); main.getUrl()">The Link</a>
</div>
</div>
</body>
控制器(AngularJS 1.4.9):
(function() {
'use strict';
angular
.module('myApp', [])
.controller('MainController', MainController);
function MainController() {
var vm = this;
vm.getUrl = function() {
window.location.replace('https://codepen.io');
}
}
})();
$event.preventDefault();
已添加到ng-click
以防止' href
'覆盖ng-click
并点击并加载错误的网址。
我有问题在ios设备中实现了功能,在iphone X之前没有在ios设备中的“ 点击并按住 ”上打开上下文菜单。
如果从head标签中删除离子框架源,则代码可在ios设备中使用。 但是,我正在为angularJS应用程序使用离子框架。 所以无法避免。
有没有办法在ios设备中实现'open in new tab'选项,而离子仍然存在?
这是codepen链接: demo
在您的代码中, -webkit-touch-callout属性可能是none 。 删除或添加以下样式,将解决此问题
body {-webkit-touch-callout: default !important;}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.