问题标签 [annotatorjs]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
jquery - jQuery 数据仅在某些堆栈帧中可见
我正在使用来自http://annotatorjs.org/的 Annotator来编写定性数据分析 (QDA) Web 应用程序。我想对其 API 进行一些调用。这些函数将注释对象作为参数。注释使用 jQuery 的$().data()
方法存储在<span>
表示注释的突出显示文本的标记上。您可以使用如下代码访问它:
我遇到的问题是,当我运行此代码时,我得到一个空数组。根本没有检索到任何数据。我在代码中设置了一些断点以进行更深入的检查,发现在某些堆栈帧中,此代码返回正确的数据,而在其他堆栈帧中,它什么也不返回。这很奇怪,因为我不知道$().data()
用于存储数据和某些数据可见或不可见的函数之间有任何关系。
我以为我疯了,但是通过在不同的地方放置断点,我能够在 Annotator 的多个功能中重现这个观察结果。例如,这是用于将鼠标悬停在注释上的处理程序:https ://github.com/openannotation/annotator/blob/v2.0.0-alpha.3/src/ui/viewer.js#L363
如果您在此处放置断点并在堆栈帧中上下移动,则在某些帧中数据对象是可检索的,而在某些帧中则不是。我没有看到任何模式。
我认为这可能是因为 Webpack 编译代码的方式,但这不相关,因为当我使用 globals 将代码编写为脚本标记时遇到了同样的问题。
那么这有什么意义呢?为什么与元素关联的 jQuery 数据对象对某些函数可见,而对其他函数不可见?
annotations - Annotator 2.0.0-alpha.3 在触摸设备中不起作用
我在我的应用程序中使用注释器 js(2.0.0-alpha.3),它在桌面和触摸设备中运行良好,但它不起作用。
我在文档中看到,当我们使用 1.2 版本时,我们可以使用触摸插件,但对于 2.0.0 版本,我们没有任何插件,但我们有原生移动支持。
而且在文档中我可以看到 2.1 版本的这些是可用的更改 https://github.com/openannotation/annotator/blob/master/doc/roadmap.rst 此版本的主要目标,我们的目标是在 1 月发布2016 年 1 月 1 日(11 月 15 日主要功能冻结):
- 支持使用键盘进行的选择
- 核心支持触控设备上的注释
- 支持注释中的多种类型选择器
- 支持将注释的选择器解析('reanchor')为适合在页面中显示的形式的组件
但是我在 github 上看不到任何 2.1 版本,所以想知道我们是否更新了相同的信息。
javascript - 保存和加载 Annotator.js 注释
我正在使用Annotator.js
2.0.0(此处的文档)来注释页面。我正在按照文档中的说明初始化注释器,如下所示:
我知道 Annotator.js 提供了一个存储模块,但这需要实现一个不适用于我的用例的 API,因为我需要将注释与特定页面和用户相关联,并按页面/用户获取它们 - 不是只是注释ID。即使这样,我也不清楚如何在页面上实际显示这些注释。
我的问题是:如何在页面上加载和显示这些注释?
更新:我想出了如何使用自定义模块获取注释:
这使我可以保存和更新annotation
对象上window.annotations
的return
对象为模块挂钩(基本上是事件)提供功能。其中一个请求钩子是start
,它允许我在初始化注释器时运行代码。但是,我不确定要调用什么方法来创建注释。
我试过app.annotations.create()
了,但是即使传递了一个由 annotator.js 创建的注释对象,它也会创建一个注释框(即用户可以键入的地方),并且实际上并没有创建注释。所以现在,即使我能够保存和更新注释,我仍然无法以编程方式创建它们(从 localStorage 或自定义后端 API)。
更新 2:文档建议您可以调用annotationsLoaded
钩子,然后传递注释数据,但我看不到用于传递此数据的格式。我已经尝试将其作为格式如下的对象:
还有一个数组,正如API建议的那样,应该返回数据:
这些方法都没有在页面上创建注释。我在这里想念什么?
javascript - Annotatorjs 突出显示在 ios 中不起作用
注释后无法使用webview删除ios中的注释文本
jquery - JQuery 类型上不存在属性“注释器”用反应打字稿
我想让 annotatorjs 与 typescript 项目一起使用
这是使用 html 页面和 jquery 运行它的步骤,它可以工作。
现在我想让它与 react 和 typescript 一起工作。这是我在反应项目中所做的步骤
安装jQuery
将 annotatorjs 文件添加到 index.html 文件
索引.tsx 文件
从“反应”导入反应;
但我收到错误“JQuery”.ts(2339) 类型上不存在属性“注释器”