我的问题是我在UIWebView中使用的网站使用Javascript打开链接
window.open source, '_blank' //coffeescript
这是我用来捕捉链接的当前代码...(不起作用),理论上,在safari中打开它们。发生的事情是单击此代码实际上是触发并最终使用UIWebViewNavigationTypeOther作为UIWebViewNavigationType
func webView(webView: UIWebView!, shouldStartLoadWithRequest request: NSURLRequest!, navigationType: UIWebViewNavigationType) -> Bool {
println("inside")
var req = request.URL
println(req.scheme)
if navigationType == UIWebViewNavigationType.LinkClicked {
println("false")
UIApplication.sharedApplication().openURL(request.URL)
return false
}
println("true")
return true
}
我几乎总是以UIWebViewNavigationType.other作为url类型...我在window.open中可以做什么来强制linkClicked类型发生?或通过window.open发送一些自定义信息,我可以读到我的结尾?我想避免使用url?clicked = 1方法。
我对这里的想法持开放态度......
答案 0 :(得分:2)
To fake a onclick event from javascript you need to do something like this..
SET EXITCODE=0
copy source1 dest1
call someFile1.bat
if ERRORLEVEL 1 goto Failed
copy source2 dest2
call someFile2.bat
if ERRORLEVEL 1 goto Failed
copy source3 dest3
goto Success
:Failed
set EXITCODE=1
:Success
EXIT /B %EXITCODE%
the above code will hit the UIWebViewNavigationType.LinkClicked
var aTag = document.createElement('a');
aTag.setAttribute('href',"http://www.google.com");
aTag.innerHTML = "link text";
aTag.click()
the above code will trigger UIWebViewNavigationType.other