将元素从一个 UIWebView 传递到另一个 UIWebView
passing an element from one UIWebView to another
我正在制作一个使用两个UIWebViews的应用程序。在其中一个上,我剥离了javascript的网页并加载它(以使页面显示得更快)。另一个在后台加载带有javascript的整个页面,并在完成后替换另一个UIWebView。带有javascript的页面将添加一些横幅和东西,使其更大。
我试图使UIWebView自动滚动到用户在其他WebView上的同一位置(元素)。我一直在尝试通过javascript(使用document.elementFromPoint)来做到这一点,但是我找不到将Element传递给另一个UIWebView的方法(不知道是否可能)。我也无法通过 Id 找到该元素,因为它们没有 Id 属性。
有没有办法将元素作为变量从一个UIWebView传递到另一个UIWebView?或者有没有其他方法可以做到这一点?
简单地将其从一个UIWebView传递到另一个UIWebView。
但是,如果您定义自己的协议并将数据作为 URL 传递,则可以将数据传递到本机环境,然后您可以在其他 Web 视图上提取并执行 Javascript 以注入数据。
捕获 URL 可以在实现 UIWebViewDelegate 协议的类中使用webView:shouldStartLoadWithRequest:navigationType:
来完成,并且可以在 UIWebView 实例上使用stringByEvaluatingJavaScriptFromString:
执行 Javascript。
如果你看一下源代码,这就是在PhoneGap/Cordova中所做的。
您可以使用- (NSString *)stringByEvaluatingJavaScriptFromString:(NSString *)script
传递参数。
javascript 方法可以返回字符串,然后由上述方法返回。它可以以 JSON 的形式返回多个值的数据,您可以使用 JSON 解析器解析这些值。或者它可以简单地返回一个字符串。您可以进一步使用该字符串/JSON 数据。
要传递该值,请参阅以下代码:
NSString *jsPrintBodyOfTable=[[NSString alloc]initWithFormat:@”printBodyOfTable(('”%@'”))”, content.at_content];
[self.webView stringByEvaluatingJavaScriptFromString:jsPrintHeadOfTable];
http://howtomakeitinamsterdam.wordpress.com/2011/12/17/uiwebview-calling-javascript-from-ios-with-passing-parameters-tutorial/的简单教程
有一个 DOM 属性是您要查找的: scrollY
,因此您可以在第一个 Web 视图中检索它:
NSString* scrollPosition = [webView1 stringByEvaluatingJavaScriptFromString: @"scrollY"];
然后进行第二次滚动:
[webView2 stringByEvaluatingJavaScriptFromString:
[NSString stringWithFormat: @"window.scrollTo(0, %d);", scrollPosition]];
- 当包含另一个asp文件时,是否也包含所有引用的样式和脚本页面
- 使用clickToggle并在单击另一个元素时关闭元素
- 使用javascript将动态表从一个html页面打印到另一个html页
- 如何在android中使用phonegap将文件从一个文件夹移动/复制到另一个文件夹
- 如果使用 lodash 将属性存在于另一个对象中,则向对象添加属性
- 另一个ajax调用中的Jquery ajax调用在for循环中没有按预期工作
- 从Rally获取一个特定的标记,以便计算另一个字段中的值
- 无法从jquery Mobile导航栏重定向到另一个页面
- 如何在JQuery函数中定义一个值,然后调用另一个函数并使用该值
- 是否可以将一个函数输入连接到另一个函数调用的文本
- 字符串在将其传递给另一个活动Android JavaScript时读取Null
- 如何在鼠标悬停时在另一个图像上滑动图像.
- 导航到特定事件的另一个变量页面
- 正在传递JSONP标头's数据参数到另一个文件中的AJAX请求
- 如何在react js中将值从一个组件发送到另一个组件
- 按我自己的类克隆另一个元素的内容和顺序
- 在另一个函数中使用变量this
- 如何在react js中从一个页面导航到另一个页面
- 在另一个函数成功结束后调用该函数
- 将元素从一个 UIWebView 传递到另一个 UIWebView