是否可以打开iPhone Safari并锁定特定窗口?

是否可以打开iPhone Safari并锁定特定窗口?,iphone,safari,window,target,openurl,Iphone,Safari,Window,Target,Openurl,我有一个应用程序,它使用OAuth进行身份验证,这意味着必须将用户定向到网站以授权该应用程序。我更愿意让用户明白,他们使用标准浏览器在原始站点进行授权,而不仅仅是使用web视图来显示我的应用程序中的内容。然而,每次他们被引导到Safari(通过openURL),它就会启动一个新的Safari窗口,一旦Safari打开了8个窗口,它就根本无法工作 我想知道是否有一个与html中锚定标记的“target”属性等价的属性,它允许我在同一窗口中打开应用程序中的所有openURL调用 我还可以通过web应

我有一个应用程序,它使用OAuth进行身份验证,这意味着必须将用户定向到网站以授权该应用程序。我更愿意让用户明白,他们使用标准浏览器在原始站点进行授权,而不仅仅是使用web视图来显示我的应用程序中的内容。然而,每次他们被引导到Safari(通过openURL),它就会启动一个新的Safari窗口,一旦Safari打开了8个窗口,它就根本无法工作

我想知道是否有一个与html中锚定标记的“target”属性等价的属性,它允许我在同一窗口中打开应用程序中的所有openURL调用


我还可以通过web应用程序公开其他功能,在Safari中创建一个介于iphone本机功能和web应用程序功能之间的混合应用程序,但如果每次在应用程序和Safari之间切换时都必须启动一个新窗口,那么它将变得不可行。Youtube应用程序显然能够在显示视频后将用户返回到上一页,但这很可能是Safari for iphone中的自定义插件。另外,虽然返回到上一页有些有用,但将它们发送到现有窗口中的新URL确实会打开很多可能性。

我很确定没有办法将目标参数传递到
openURL:

关于Safari,我注意到,如果使用
openURL:
打开的页面已经在Safari中打开,它将不会打开其他选项卡。它只是重新加载该页面。这听起来可能很琐碎,也没有什么帮助,但如果您可以使web应用程序只使用一个页面,那么您可以利用它。不同的视图或状态可以用
#anchor
标记表示


一个例子是。注意到他们的URL结构了吗?这样下去,等等。所有这些对用户来说都是不同的网页,但对Safari来说都是相同的网页。

我发现iOS 6.0.1 Safari将使用一个简单的标签打开相同的标签,而不带斜杠。在上面的例子中,openURL将打开到同一个选项卡


在网页中,使用window.location.hash返回参数。在上面的示例中,它将返回#someinfo。

这实际上非常有用。我相信我能用它做些有用的事。谢谢。刚刚测试过这个,实际上根本不起作用。iphone上的Safari仍然会为每次调用openURL启动一个新窗口,即使URL是100%相同的,更不用说根据锚标记的不同而变化了。