我对此感到困惑.. 我有这段代码:
<a href=" #/products/{{product.id}}" ng-click="customFunction()">
产品是具有'id'元素的对象。
customFunction
在购物车中添加产品的位置
两者都是合并的,因为href
元素中的路径允许访问添加的产品可自定义的新页面。
代码和路由工作正常交叉浏览器,除了手机(至少Android,Chrome和本机浏览器)。在Android手机上,只有ng-click
对点击作出反应。但我仍然可以打开由href
路由的网页,方法是按下链接并在新标签页中打开:oO
我的路由看起来像那样(app.js):
when('/products/:productId', {
templateUrl: 'partials/store_composition.html',
controller: 'mainCtrl'
})
并在主Ctrl中调用getProduct函数:
if ($routeParams.productId != null) {
$scope.product = $scope.store.getProduct($routeParams.productId);
}
访问store.js
文件:
store.prototype.getProduct = function (id) {
for (var i = 0; i < this.products.length; i++) {
if (this.products[i].id== id)
return this.products[i];
}
return null;
}
它工作正常......除了Android!但是如果长按新标签,链接仍然存在:s:s
有什么想法吗?
更新:
我注意到android / chrome导航栏中的URL永远不会改变。相反,在常规浏览器中发生了什么(app/index.html#/products/batavia400
之类的URL在顶部更新)
但除了我在我的帖子中链接的路由,我的应用程序中的每个其他路由都正常工作(没有url更新只是相同...:/)
解决: 我实际上通过添加
解决了这个问题 <meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
及其制作技巧的user-scalable=no
。
默认情况下,屏幕稍微有点缩放,由android设置,这就是用户触摸div链接时产生的冲突。
我想如果我的网页设计技巧更好,我就不会有问题;)
答案 0 :(得分:1)
我实际上是通过添加
解决了这个问题 <meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
及其制作技巧的user-scalable=no
。
默认情况下,屏幕稍微有点缩放,由android设置,这就是用户触摸div链接时产生的冲突。