对于iOS谷歌浏览器,当用户点击"请求桌面网站"按钮时,浏览器会尝试打开桌面网站做什么?我想象网站正在寻找的某种类型的标题,或类似的东西?
我宁愿认为这不会那么难以找到,但是看起来很难找到一个很棒的跨设备文章,就像你期望的那样.
我想创建一个链接,打开移动设备的浏览器并浏览谷歌地图或打开地图应用程序(Apple地图或谷歌地图)并直接启动路线,即:从当前位置开始,在给定点结束(纬度/经度).
我可以测试两个设备(在browserstack旁边),Android和iPhone.
以下链接仅适用于Android:
<a href="http://maps.google.com/maps?daddr=lat,long&ll=">Take me there!</a>
Run Code Online (Sandbox Code Playgroud)
点击iPhone Chrome浏览器中的此链接,奇怪地在桌面版中打开谷歌地图,并在移动应用上播放广告...
这只适用于iOS,打开Apple Maps,要求我输入一个起始位置(我可以选择"当前位置")并启动route =所需行为.在Android上单击此链接完全失败:
<a href="maps://maps.google.com/maps?daddr=lat,long&ll=">Take me there!</a>
注意maps:// protocol.
是否有一种优雅的交叉设备方式来创建这样的链接?一个适用于所有主流手机的链接?
谢谢
更新:找到解决方案(有点)
这就是我想出来的.这不是我想象的,尽管它正在发挥作用.
var ua = navigator.userAgent.toLowerCase(),
plat = navigator.platform,
protocol = '',
a,
href;
$.browser.device = ua.match(/android|webos|iphone|ipad|ipod|blackberry|iemobile|opera/i) ? ua.match(/android|webos|iphone|ipad|ipod|blackberry|iemobile|opera/i)[0] : false;
if ($.browser.device) {
switch($.browser.device) {
case 'iphone':
case 'ipad':
case 'ipod':
function iOSversion() {
if (/iP(hone|od|ad)/.test(navigator.platform)) {
// supports iOS 2.0 and later: <http://bit. ly/TJjs1V>
var v = (navigator.appVersion).match(/OS (\d+)_(\d+)_?(\d+)?/);
return [parseInt(v[1], 10), parseInt(v[2], 10), parseInt(v[3] || …
Run Code Online (Sandbox Code Playgroud) 所以,目前我有一个看起来像上面第一张图片的按钮.如何减少按钮本身内部文本的填充(看起来更像第二个图像)?
布局宽度和高度设置为:
android:layout_width="match_parent"
android:layout_height="wrap_content"
Run Code Online (Sandbox Code Playgroud)
自定义样式形状具有参数"
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" android:padding="10dp">
Run Code Online (Sandbox Code Playgroud)
其余只是颜色属性和半径值.
为了说清楚,我希望按钮的框架能够更紧密地拥抱"登录"文本.
非常感谢所有帮助和反馈.谢谢.
我正在尝试使用OAuth 2.0在移动应用程序的Web API中实现委派授权.根据规范,隐式授权流程不支持刷新令牌,这意味着一旦授予访问令牌一段特定时间,用户必须在令牌过期或撤销后再次向应用程序授予权限.我想这对于在浏览器上运行的一些javascript代码来说是一个很好的场景,正如规范中提到的那样.我试图最小化用户必须向应用授予权限以获取令牌的时间,因此看起来授权代码流是一个很好的选择,因为它支持刷新令牌.但是,此流程似乎很大程度上依赖于Web浏览器来执行重定向.我想知道如果使用嵌入式Web浏览器,这个流程对于移动应用程序仍然是一个不错的选择.
我正在通过Chrome的移动仿真工具调试我们网站的移动版本,但无法弄清楚如何在选择文本字段时弹出屏幕键盘.
我点击了文本框,但没有弹出键盘.如果我在移动设备上执行此操作,则弹出默认输入法(键盘)并允许我键入.
有没有办法复制这个?
我正在尝试创建一个按钮,这样当用户点击它时,它会在按住鼠标按钮时改变其样式.如果在移动浏览器中触摸它,我也希望它以类似的方式改变它的风格.对我来说看似显而易见的事情是使用CSS:active伪类,但这不起作用.我尝试过:专注,但它也没有用.我试过了:悬停,它似乎工作,但它把我的手指从按钮上移开后保持了风格.所有这些观察都在iPhone 4和Droid 2上.
有没有办法在移动浏览器(iPhone,iPad,Android,还有希望其他人)上复制效果?现在,我正在做这样的事情:
<style type="text/css">
#testButton {
background: #dddddd;
}
#testButton:active, #testButton.active {
background: #aaaaaa;
}
</style>
...
<button type="button" id="testButton">test</button>
...
<script type='text/javascript' src='http://code.jquery.com/jquery-1.6.1.min.js'></script>
<script type='text/javascript'>
$("*").live("touchstart", function() {
$(this).addClass("active");
}).live("touchend", function() {
$(this).removeClass("active");
});
</script>
Run Code Online (Sandbox Code Playgroud)
:active伪类适用于桌面浏览器,活动类适用于触摸浏览器.
我想知道是否有更简单的方法来做到这一点,而不涉及Javascript.
我正在尝试让我的一些图书馆使用触摸设备,但我很难弄清楚它们是如何被支持的以及它们是如何工作的.
基本上,有5个触摸事件,但似乎只有touchstart
事件(duh)在移动浏览器中有共识.我创建了一个小提琴作为测试用例.
我已经在我的Galaxy Note上使用Android 4测试了这个,但您也可以通过桌面浏览器检查链接.
目标是试图弄清楚如何处理水龙头,双水龙头和长水龙头.没有什么花哨.
基本上,这是发生的事情:
在Android的浏览器的股票不会触发触摸事件.它只是试图模仿鼠标点击,水龙头,射击mousedown
,mouseup
和click
事件连续,但双水龙头只是放大和缩小网页塔.
当手指触摸屏幕时,Chrome for Android会触发touchstart事件.如果它的发布很快,它触发那么mousedown
,mouseup
,touchend
最后click
事件.
在的情况下,长按后,在约半秒它激发mousedown
和mouseup
,和touchend
当手指抬起时,没有click
在结束事件.
如果你移动你的手指,它会发射touchmove
几次事件,然后它会发射一个touchcancel
事件,之后什么都不会发生,甚至touchend
在举起手指时都不会发生.
一双击触发/缩小功能变焦,但事件明智它触发组合touchstart
- touchevent
两次,发射没有鼠标事件.
火狐为Android正确触发该touchstart
事件,并在短击火灾的情况下mousedown
,mouseup
,touchend
和click
之后.
如果长时间点击,它会触发mousedown
,mouseup
最后 …
当用户处于滚动触摸屏(移动设备)的行为时,我有一个固定的图像覆盖页面.
我希望将该图像设置为"不可点亮"或"不活动"或其他任何内容,以便如果用户触摸并拖动该图像,其后面的页面仍然会滚动,就好像图像没有"阻止"交互一样.
这可能吗?如果需要,我可以尝试提供屏幕截图,例证我的意思.
谢谢!
是否可以将离子frameowork用于常规Web应用程序而不是将其包装在Cordova中?
我被要求创建一个实际的HTML页面/ JavaScript来模拟使用JavaScript代码检测移动设备(iPhone/iPad/Android).然后,这将使用户进入另一个屏幕,询问他们的电子邮件地址.