我想在单击按钮时更改 UIWebView 内 HTML 元素的位置。我为此编写了以下代码,但它似乎不起作用。有人知道我可能做错了什么吗?
NSString *str = [NSString stringWithFormat:@"function setOffset() {\
var offset = document.getElementById('cimage').offset();\
document.getElementById('cimage').offset({ top: offset.top-50, left: offset.left});\
setOffset();"];
[self.webView stringByEvaluatingJavaScriptFromString:str];
最佳答案
您的 UIWebView
是一个 Javascript 解释器,需要提供正确的 Javascript。
1) 你的大括号不平衡,所以代码无法正确计算 2) 你只是想定义一个函数,而不是调用它(为了快速修复,你可以尝试删除第一行 function setOffset () {
,而不是让它从 var offset =
...开始,这意味着即时执行而不是函数定义)。
我建议您在实际的实时 Javascript 环境(如 Chrome 的开发者工具)中尝试您的 Javascript/DOM 交互,并确保代码是正确的,并且首先在您的实验室环境中执行您期望它执行的操作。 UIWebView
与桌面网络浏览器没有太大区别。
您还可以按照 this 中给出的说明为 UIWebView
的实际实例获得一个相当好的开发环境。回答。
关于javascript - 更改 UIWebVIew 中 HTML 元素的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25298493/