javascript - Seadragon 事件 - 事件触发时获取 Seadragon 查看器

标签 javascript jquery events seadragon

我有一个问题。我希望能够在同一页面上实例化多个 Seadragon Viewer 对象。一切都很好,除了我已经编写了事件处理程序(如单击、鼠标等)并且我希望它们是通用的。

但是,似乎无法知道在哪个 Seadragon 查看器上该事件的名称。例如,所有 jQuery 事件都可以调用“this”来引用触发事件的元素。到目前为止,我发现的唯一方法是将我的 Seadragon 查看器声明为全局变量,这不是 super 优雅......

海龙事件有对应的“this”吗?

最佳答案

我得到了一个稍微优雅的解决方案,对我声明的所有 Seadragon Viewer 对象使用一个数组。因此,我将 SD 查看器的引用存储在全局数组中。用于实例化 Seadragon 对象的每个元素都具有“Seadragon”类。

当事件被触发时,我会:

var id = $(this).closest('.SeadragonViewport').attr('id'); var cSDObj = g_SDObjects[id];

其中 cSDObj 是我应该使用的当前 Seadragon 对象。

我愿意接受任何比这个更好的建议,但到目前为止,它有效!

关于javascript - Seadragon 事件 - 事件触发时获取 Seadragon 查看器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12585044/

相关文章:

javascript - 编写一个接受两个整数并显示较大值的 JavaScript 程序。

javascript - 无法从 Node js建立mongodb连接

javascript - Changed.jstree 事件在类方法内部的 jstree 中不起作用

jquery - IE8 上的负边距

Javascript "load"事件未按预期工作

java - 在 Android 2.1 中使用 getRotationMatrix 和 getOrientation

javascript - 在 mediaelement.js 中禁用搜索

javascript - 数组值在两个函数之间传递

javascript - 强制停止点击事件

c++ - 事件监听器如何工作?