laptop and a wrench

漏洞

When a mapping application made with JS API is embedded inside an iframe, it has issues with panning.

上次发布: August 25, 2014 ArcGIS API for JavaScript
漏洞 ID 编号 NIM049729
已提交October 9, 2009
上次修改时间June 5, 2024
适用范围ArcGIS API for JavaScript
找到的版本Other
编程语言JavaScript
操作系统Windows OS
操作系统版本Vista
修正版本ArcGISJavaScriptAPI 1.6
状态Fixed

解决办法

From the Developement team:-------------------------------------1. To include the following script after loading the JS API scripts.(function() { if (!dojo || !esri || !esri._MapContainer) { console.error("[ iframe-fix.js ] patch failed"); return; } dojo.addOnLoad(function() { var dc = dojo.connect, ddc = dojo.disconnect; esri._MapContainer.prototype._onMouseDragHandler = function(evt) { ddc(this._onMouseDragHandler_connect); this._onMouseDragHandler_connect = dc(document, "onmousemove", this, "_onMouseDraggingHandler"); ddc(this._onMouseUpHandler_connect); this._onMouseUpHandler_connect = dc(document, "onmouseup", this, "_onDragMouseUpHandler"); this._docLeaveConnect = dc(document, "onmouseout", this, "_onDocMouseOut"); this.onMouseDragStart(this._processEvent(evt)); }; esri._MapContainer.prototype._onDocMouseOut = function(evt) { var related = evt.relatedTarget; if (!related) { // venturing outside the known universe (eg: out of an iframe) this._onDragMouseUpHandler(evt); } }; esri._MapContainer.prototype._onDragMouseUpHandler = function(evt) { this._dragEnd = true; evt = this._processEvent(evt); this.onMouseDragEnd(evt); ddc(this._docLeaveConnect); ddc(this._onMouseDragHandler_connect); ddc(this._onMouseUpHandler_connect); this._onMouseMoveHandler_connect = dc(this.__container, "onmousemove", this, "_onMouseMoveHandler"); this._onMouseUpHandler_connect = dc(this.__container, "onmouseup", this, "_onMouseUpHandler"); this.onMouseUp(evt); }; });}());

重现步骤

漏洞 ID: NIM049729

软件:

  • ArcGIS API for JavaScript

当漏洞状态发生变化时获得通知

下载 Esri 支持应用程序

发现关于本主题的更多内容

获取来自 ArcGIS 专家的帮助

联系技术支持部门

下载 Esri 支持应用程序

转至下载选项