将 Javascript 注入 UISlider

Posted

技术标签:

【中文标题】将 Javascript 注入 UISlider【英文标题】:Injecting Javascript into UISlider 【发布时间】:2012-01-05 23:20:02 【问题描述】:

我已经与一个问题作斗争了大约一个星期,这真的让我很烦。我已将 html 嵌入到 Xcode 中的 uiwebview 中,我想启动我的

javascript 函数

ZoomChanger(在此处输入值)

基于 UIslider 的值。我试过这段代码...

NSString *string = [NSString stringWithFormat:@"ZoomChanger(100,200,300);", slider.value];
[webView stringByEvaluatingJavaScriptFromString:string];

但它只放大一次并且不会继续缩放并且当uislider被带回开始时不会取消缩放。它在安卓上运行良好,但我无法让它在 ios 上运行。

【问题讨论】:

如果您显示用于初始化滑块的代码,它会更容易(除非您使用 IB,然后显示您用于其属性的值)。否则很难理解你在努力做什么,否则 Krizz 的回应对我来说似乎就足够了 【参考方案1】:

您每次都发送ZoomChanger(100,200,300);。 我相信您想从滑块发送一个值。 ZoomChanger 是什么?我假设它是一个javascript函数function ZoomChanger(x)....

你需要这样的东西:

NSString *string = [NSString stringWithFormat:@"ZoomChanger(%d);", slider.value * 10]; 
[webView stringByEvaluatingJavaScriptFromString:string];

看到这个doc。

【讨论】:

它不起作用,我阅读了文档,但仍然没有得到它。基本上我希望滑块的最小值为零,最大值为 8。在值为 1 时,我希望它启动 ZoomChanger(10(例如))并一点一点地一直到 8。如果滑块返回降低一个值,缩放也是如此。感谢您的快速响应顺便说一句。哦,缩放转换器只是在我的 webview 中缩放我嵌入的 html。 那么要为 8 传递的值是多少? 80?如果是这样,您可以观察到它是slider.value * 10 是的,但是我希望缩放在我向右滑动时增大,在我向左滑动时减小,啊哈!我讨厌代码哈哈。 什么会起作用?我试过slider.value *10的建议? 如果没有,可能是你的javascript函数有问题。

以上是关于将 Javascript 注入 UISlider的主要内容,如果未能解决你的问题,请参考以下文章

将 javascript 函数注入 iframe

将 Javascript 注入 UISlider

JavaScript 通过JavaScript通过ID将HTML注入对象

如何使用jquery将javascript代码注入iframe头部

使用 JavaScript 将 Chrome 扩展注入 iFrame

如何将javascript文件注入来自api的html字符串?