在UIWebVIew中更改HTML元素的位置

时间:2014-08-14 00:56:26

标签: javascript jquery html ios uiwebview

我想在单击按钮时更改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];

1 个答案:

答案 0 :(得分:1)

您的UIWebView是一个Javascript解释器,需要输入正确的Javascript。

1)您的大括号不平衡,因此代码无法正确评估2)您只是尝试定义一个函数,而不是调用它(为了快速修复,您可以尝试删除第一行function setOffset() { ,而是让它从var offset =开始......,这意味着即时执行而不是函数定义。)

我建议您在实际的实时Javascript环境(例如Chrome的开发人员工具)中尝试您的Javascript / DOM互动,并确保代码正确并首先在您的实验室环境中执行您希望它执行的操作。 UIWebView与桌面版网络浏览器差别不大。

您还可以按照this回答中给出的说明为UIWebView的实际实例获得相当好的开发环境。