我有一个问题。我希望能够在同一页面上实例化多个 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/