2012-11-01 35 views
6

在移动版Safari中打开的“googlechrome://www.lego.com”将切换到Google Chrome iOS应用以打开URL。这使得像下面的一个,它允许你在谷歌浏览器iOS应用打开当前网页小脚本,从移动Safari浏览器切换:用于在非Safari默认iOS浏览器中打开Safari的JavaScript

(function()%7Bif(document.location.href.indexOf('http')===0)document.location.href=document.location.href.replace(/%5Ehttp/,'googlechrome');%7D)(); 

我的问题是,可以反向做什么?我尝试过“safari://www.lego.com”,它只是一个无效的URL。你可以制作一个scriptlet,其中谷歌Chrome 移动Safari打开当前页面。

+0

你见过这个:http://stackoverflow.com/questions/7930001/force-link-to-open-in-mobile-safari-from-a-web-app-with-javascript?不确定它是否适合您的情况。 – woz

+0

不是,但我现在有。谢谢!这里给出的解决方案似乎并不奏效。我在iOS Chrome中测试了zvona的链接(http://www.hakoniemi.net/labs/linkkitesti.html),其中的链接打开了一个新的URL,但未切换到Safari。 – jonS90

+2

与Chrome不同,Safari似乎没有用于跨应用程序通信的文档化URL方案http://developer.apple.com/library/ios/#featuredarticles/iPhoneURLScheme_Reference/Introduction/Introduction.html#//apple_ref/ DOC/UID/TP40007899。如果您正在开发自己的应用程序,则可以实现应用程序的委托'openURL:'。如果你只对JS感兴趣,没有文档记录的方式来做到这一点。 –

回答

1

答案是肯定的。出于礼貌,还是MacStories(http://www.macstories.net/tutorials/chrome-for-ios-send-a-webpage-back-to-safari-via-bookmarklet/),我发现这个代码:

window.location='googlechrome-x-callback://x-callback-url/open/?url='+encodeURIComponent(location.href)+'&x-source=Safari&x-success='+encodeURIComponent(location.href);

执行该代码,去您的主屏幕,重新打开浏览器,并有一个神奇的后退按钮返回到Safari浏览器。这可能不是你想要的,但它的工作原理......扭结。

祝你好运!

更新: 下面是截图: 链接(对不起,我没有足够的信誉来把它的权利在后):http://i.stack.imgur.com/OR175.jpg

更新:
看来这个功能做到这一点已经打破。谢谢!

+0

这是'黑客'还在工作吗?截至2014年7月15日,我的Mobile Safari在新标签中打开location.href而不是Safar。 – Metaphox

+0

@ Metaphox - 你是否按照http://www.macstories.net/tutorials/chrome-for-ios-send-a-webpage-back-to-safari-via-bookmarklet/上的特别指示进行操作?它很有可能被删除,但我会测试它。 – Zoyt

+0

@Mepaphox - 似乎这个功能已被删除。抱歉。 – Zoyt

相关问题