以编程方式从 uiwebview 获取选定元素?

2024-05-09

目前我正在服用这个示例网站 http://www.fusioncharts.com/demos/business/management-dashboard/view/Default.asp并显示在我的网络视图中。网页显示正确。

现在我试图弄清楚用户点击 uiwebview 后会选择哪些数据。

为此,我可以使用以下方法获取水龙头的 CGPointUITapGestureRecognizer.

-(void)singleTap:(UIGestureRecognizer *)gestureRecognizer
{

    CGPoint touchPoint = [gestureRecognizer locationInView:myWebView];

    NSString *js = [NSString stringWithFormat:@"document.elementFromPoint(%f, %f).toString()", touchPoint.x, touchPoint.y];

    NSString * tagName = [myWebView stringByEvaluatingJavaScriptFromString:js];

    NSLog(@"Selected Name: %@",tagName); 

}

// In log it is displaying [object SVGPathElement]

一旦用户选择第一个图表中的垂直条,我想获得准确的数据 (例如 1994/1995/1996)。

这个怎么做?


您没有指定什么对您不起作用......无论如何,有一些建议:

  1. 尝试在您的点击处理程序中使用以下 js:

    NSString *js = [NSString stringWithFormat:@"document.elementFromPoint(%f, %f).innerHTML", touchPoint.x, touchPoint.y];
    
  2. 创建点击手势处理程序时,为其指定一个委托(它可以是您的控制器):

    tap1.delegate = self;
    
  3. 在您的控制器(或 Web 视图委托)中,定义以下委托方法:

    - (BOOL)gestureRecognizer:(UIGestureRecognizer*)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:    (UIGestureRecognizer*)otherGestureRecognizer {
        return YES;
    }
    
  4. 如果您使用的是 iOS 5,请查看这篇文章关于一个小故障elementFromPoint http://www.icab.de/blog/2011/10/17/elementfrompoint-under-ios-5/.

通过这样做,我可以获得所选对象的准确 HTML 值。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

以编程方式从 uiwebview 获取选定元素? 的相关文章

  • 如何制作像Stackoverflow一样的可折叠评论框

    我正在构建一个网站 并且有一个状态更新列表 我希望允许用户为列表中的每个项目撰写评论 但是我正在尝试实现一个类似于堆栈溢出工作方式的用户界面 特别是可折叠的评论表单 列表 用户在其中单击对列表中的特定状态更新添加评论 并且在列表中的该项目下
  • 删除 NSMutablearray 中的最后一个对象[关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 为什么要删
  • 从 DOM 中删除后,动态添加的 JavaScript 脚本会继续执行

    因此 我正在创建一个 SPA 并使用 AJAX 将 HTML 页面加载到我网站的索引页面中 问题是 当包含我的一个页面时 它似乎会徘 徊并执行其中的 JavaScript 代码 即使它随后从 DOM 中删除 索引 html 正文 div d
  • 记录jQuery中调用的方法和参数

    假设我有 jQuery 并且加载了几个插件 我运行一些这样的代码 someSelector someMethod someParam someOtherParam someOtherSelector someOtherMethod anot
  • 如何从 URL 字符串中删除某些参数?

    我有这个var存储表示充满参数的 URL 的字符串 我正在使用 AngularJS 我不确定是否有任何有用的模块 或者可能使用纯 JavaScript 来删除不需要的 URL 参数而无需使用正则表达式 例如我需要删除 month 05并且
  • 检测 iframe 内容加载失败

    我可以使用以下命令检测 iframe 的内容何时加载load事件 不幸的是 就我的目的而言 这有两个问题 如果加载页面时出现错误 404 500 等 则永远不会触发加载事件 如果某些图像或其他依赖项加载失败 则会照常触发加载事件 有什么方法
  • 如何向尚未添加到页面的元素注册 Javascript 事件处理程序

    我正在尝试构建一个greasemonkey 脚本 它将根据用户与其他动态创建的数据表的交互动态创建数据表 我的问题是 每次创建表时 我都必须进行两次传递 一次用于创建表 另一次用于获取表中我想要添加事件处理程序的所有对象 通过 id 并添加
  • Angular-Datatables + Angular-xeditable:取消可编辑行

    当组合 Angular DataTables 和 Angular XEditable 时 添加新行时会取消可编辑行 这是jsfiddle https jsfiddle net faj61h5d 10 示例操作如下 1 这是初始状态 2 将第
  • t /= d 是什么意思? Python 和错误

    t current time b begInnIng value c change In value d duration def easeOutQuad swing function x t b c d alert jQuery easi
  • Relay 中的嵌套片段数据始终相同

    我是 Relay 新手 并且遇到了片段上嵌套数据的问题 当我在 graphiql 中进行测试时 以下查询返回正确的数据 因此我确信我的架构是正确的 viewer customers name billing address city 但是
  • 禁用任何类型的浏览器窗口滚动?

    有没有办法禁用滚动 不仅仅是滚动条 还有浏览器窗口的全部功能 根据您对 Keit 的回答 您不想在打开灯箱时滚动处于活动状态 如果是这种情况 您可以使用以下 css 在打开灯箱的同时向正文添加一个类 这个解决方案的好处是它保留了滚动 空间
  • chrome 扩展 - 将数据从后台传递到自定义 html 页面

    创建浏览器扩展 我必须从 background js 打开新选项卡并将 JSON 数据传递到这个新选项卡 在新选项卡中 我使用传递的 JSON 数据来操作 渲染 DOM 下面是我的 background js 的一部分 我在其中使用自定义
  • IE6 丢失查询字符串

    我有一个使用 javascript 从查询字符串中获取值的页面window location 从网络服务器运行时效果很好 但如果我通过将其放在地址栏中使用 IE6 在本地运行它 c mysite index htm 网站创建的任何查询字符串
  • 优化正则表达式以过滤数千个 HTML 选择选项

    背景 我开发了一个基于 jQuery 的穿梭小部件 https stackoverflow com a 13557000 59087对于 HTMLselect元素 因为我找不到一个经过最低限度编码并提供正则表达式过滤器来补偿的元素变音符号
  • Jade(当前称为“Pug”)模板引擎中的循环

    我想使用一个简单的循环 例如for int i 0 i lt 10 i 如何在 Jade 引擎中使用它 我正在使用 Node js 并使用expressjs 框架 例如 for var i 0 i lt 10 i li array i 你可
  • 盒式捆绑包与 MVC4 捆绑包

    我目前正在开发一个原型 ASP NET MVC 3 解决方案 该解决方案将用作多个项目重写的基础 来自 Web 表单 我的目标之一是跨应用程序实现一些脚本管理 而不是我们目前没有的目标 MVC 3有一个缺陷恕我直言 如果您需要在部分视图或模
  • 如何在 ChartJS 中创建自定义图例

    我需要使用 ChartJS 库为我的圆环图创建自定义图例 我已经使用 ChartJS 提供的默认图例创建了甜甜圈 但我需要一些修改 我希望其价值高于汽车名称 另外 我不喜欢粘性图例 我想将其与甜甜圈分开 这样我就可以更改字体 框的样式 例如
  • Chrome Prerender 功能每次都会被取消

    我正在尝试 Chrome 中的预渲染功能 但是当我检查网络时 我可以看到任何链接的请求都被取消 我使用以下语法 我尝试了现场演示http prerender test appspot com http prerender test apps
  • 从 Node.js 调用 execl、execle、execlp、execv、execvP 或 execvp 的方法

    POSIX 系统公开了一系列exec函数 允许人们将可能不同的东西加载到当前进程中 保留打开的文件描述符 进程标识符等 可以出于多种原因执行此操作 在我的情况下 这是引导 我想更改我自己的进程的命令行选项 然后在现有进程上重新加载它 这样就
  • html5 canvas 使用图像作为蒙版

    是否可以使用具有形状的图像作为整个画布或画布内图像的蒙版 我想将图像放置在画布中 并在图像上添加蒙版 然后将其另存为新图像 您可以使用 source in globalCompositeOperation 将黑白图像用作蒙版 首先 将蒙版图

随机推荐

  • Tensorflow 的 LSTM 输入

    I m trying to create an LSTM network in Tensorflow and I m lost in terminology basics I have n time series examples so X
  • Xamarin 没有安装的配置文件与安装的 iOS 签名身份匹配

    我想知道是否可以在 ios 设备上编译 Xamarin 应用程序 使用 Visual Studio for mac 而无需成为开发人员 费用为 99 美元 年 因为当我尝试在 iPhone 上构建项目时出现此错误 Xamarin iOS C
  • 如何将“全选”选项添加到 jqGrid 选择工具栏过滤器?

    我正在使用 jqGrid 和过滤器工具栏构建表格 以便用户过滤表中显示的行 如果我使用文本作为搜索类型 这一切都很好 但对于某些列 我想使用选择列表以使用户更容易根据列中的值进行过滤 我可以将列类型设置为 选择 并使用表中的值填充选项 一切
  • 单击链接时启动本地应用程序

    我正在开发一个内部 Web 应用程序 它允许我为客户存储远程控制凭据 每次我想要连接到客户计算机时 我都需要启动远程支持软件 复制并粘贴用户名和密码 然后单击 开始 按钮 该软件将具有可用的命令行参数 允许我立即启动会话 但是 我不知道如何
  • 在 m4 中,如何包含名称中包含环境变量的文件?

    我想在 m4 文本中包含一个相对于我的沙箱基目录的文件 而不使用 I switch 到目前为止 我已经弄清楚如何使用系统调用来获取环境变量 define MODEL ROOT syscmd printf MODEL ROOT dnl 接下来
  • 将子域重定向到 CakePHP 操作

    背景 我有一个 CakePHP 应用程序 位于 m 我想写一个根级别的 htaccess文件 它将重定向网站的 子域 作为操作的参数 例如 我想编写一个重写规则 这将导致像这样的重定向 http mysite myserver com ht
  • xcode9.0,在故事板中,当我将表格视图样式切换为分组时,xcode崩溃了

    在xcode9 0中 我向故事板添加了一个tableview 当我将tableview样式切换为分组时 xcode崩溃了 将新的表格视图拖到视图的顶部 删除自动行高和自动估计的默认检查 选择团体类型 OK
  • Android 蓝牙低功耗特性通知计数限制:这是否因设备而异?

    Context 我正在构建一个针对 5 0 的 Android 应用程序 它使用 BLE 连接到多个外围设备 这些外设中的每一个都有许多 10 个特性 理想情况下 我想订阅这些特征中每一项的更改通知 然而 我从阅读中了解到 Android
  • 如何使用 Handler.Post() 通知工作线程 UI 被修改?

    我有一个工作线程 偶尔我会使用以下命令向 UI 线程发送更新Handler Post 在某些情况下 我需要工作线程等待Handler Post 在 UI 线程上执行and视图被修改并且afterUI线程被修改 通知worker线程继续 这是
  • Socket.*Async 方法是线程化的吗?

    我目前正在尝试找出最小化 TCP 主服务器中使用的线程数量的最佳方法 以便最大限度地提高性能 由于我最近阅读了大量 C 5 0 的新异步功能 异步并不一定意味着多线程 这可能意味着将有限状态对象分成较小的块 然后通过交替与其他操作一起进行处
  • 使用画布矩形裁剪图像

    裁剪图像无法正常工作 我哪里错了 我的Xaml
  • 如何以编程方式检索“Program Files”文件夹的实际路径? [复制]

    这个问题在这里已经有答案了 可能的重复 C 如何在 Windows Vista 64 位上获取程序文件 x86 https stackoverflow com questions 194157 c sharp how to get prog
  • 防止 Skype 突出显示损坏文本区域

    简而言之 一个文本区域以编程方式填充了电话号码 并安装了 Skype 插件 生成突出显示标签 Thus 418 555 1234 becomes begin of the skype highlighting 418 555 1234 en
  • Visual Studio 不显示 WSL2 启动配置文件

    我刚刚将 Visual Studio 社区 2019 更新到版本 16 9 1 但我无法看到 WSL2 配置文件 如中提到的this https learn microsoft com en us visualstudio debugger
  • 通过一个表中的列更新另一表中的列

    我有两张桌子 A 和 B 两者都有一个共同的列 name 并通过列 id 相互链接 表A中的 name 列是空的 而表B中有数据 我的任务是用相应的id填充从表B到表A的该列中的所有数据 我正在使用以下查询 UPDATE A SET A n
  • Excel VBA 最终用户选择图表对象

    我想生成一些代码 允许最终用户从工作表中选择多个图表之一 之后我将根据该选择进行一系列操作 我正在寻找类似于 Application Inputbox Type 8 的东西 它允许对象选择而不是范围选择 我对不起眼的老VBA要求太多了吗 首
  • PHP/PDO/MySQL:插入 MEDIUMBLOB 会存储错误数据

    我有一个简单的 PHP Web 应用程序 它通过文件上传接受图标图像并将它们存储在 MEDIUMBLOB 列中 在我的机器 Windows 和两台 Linux 服务器上 这工作得很好 在第三台 Linux 服务器上 插入的图像已损坏 在 S
  • 类 GADT 类型变量的未来角色?

    A 昨天的问题 https stackoverflow com q 41135212 3072788有一个定义HList 来自HList https hackage haskell org package HList 0 4 1 0 doc
  • Numpy 将输入数组作为“out”参数传递给 ufunc

    如果类型正确 将输入数组作为 numpy 中 ufunc 的可选输出参数提供通常是否安全 例如 我已经验证以下内容有效 gt gt gt import numpy as np gt gt gt arr np array 1 2 3 4 4
  • 以编程方式从 uiwebview 获取选定元素?

    目前我正在服用这个示例网站 http www fusioncharts com demos business management dashboard view Default asp并显示在我的网络视图中 网页显示正确 现在我试图弄清楚用