【问题标题】:Telerik RadEditor Image Manager Window Not Displaying ProperlyTelerik RadEditor 图像管理器窗口未正确显示
【发布时间】:2014-12-12 17:01:30
【问题描述】:

我正在使用 Telerik RadEditor,但看到图像管理器窗口出现一些奇怪的行为,如下所示。

SiteCopy、Body Setup、Header Setup 等选项卡都来自应位于窗口后面的页面,但它们却以某种方式显示出来。单击并将窗口拖动到屏幕上的另一个位置可以解决该问题,但是,无法使用 X 或取消关闭窗口。当我在页面上放大一点时,这似乎只发生在 Chrome 中。这是图像管理器的错误还是可以采取一些措施来防止这种行为?

谢谢

【问题讨论】:

    标签: telerik radeditor


    【解决方案1】:

    试试这个帖子的想法:http://www.telerik.com/community/forums/button-click-fails-(sometimes) Chrome 39 再次破坏了互联网,因为它开始为曾经是整数的属性返回十进制值,这可能导致脚本错误。

    尝试以下方法:

    1. 在主页上使用 RadScriptManager

    2. 上面线程中的脚本覆盖可能是您正在寻找的解决方案:

      if (document.documentElement.getBoundingClientRect) {
          $telerik.originalGetLocation = function (element) {
              var e = Function._validateParams(arguments, [
                  { name: "element", domElement: true }
              ]);
              if (e) throw e;
              if (element.self || element.nodeType === 9 ||
                  (element === document.documentElement) ||
                  (element.parentNode === element.ownerDocument.documentElement)) {
                  return new Sys.UI.Point(0, 0);
              }
      
              var clientRect = element.getBoundingClientRect();
              if (!clientRect) {
                  return new Sys.UI.Point(0, 0);
              }
              var documentElement = element.ownerDocument.documentElement,
                  offsetX = Math.round(clientRect.left) + documentElement.scrollLeft,
                  offsetY = Math.round(clientRect.top) + documentElement.scrollTop;
              if (Sys.Browser.agent === Sys.Browser.InternetExplorer) {
                  try {
                      var f = element.ownerDocument.parentWindow.frameElement || null;
                      if (f) {
                          var offset = (f.frameBorder === "0" || f.frameBorder === "no") ? 2 : 0;
                          offsetX += offset;
                          offsetY += offset;
                      }
                  }
                  catch (ex) {
                  }
                  if (Sys.Browser.version === 7 && !document.documentMode) {
                      var body = document.body,
                          rect = body.getBoundingClientRect(),
                          zoom = (rect.right - rect.left) / body.clientWidth;
                      zoom = Math.round(zoom * 100);
                      zoom = (zoom - zoom % 5) / 100;
                      if (!isNaN(zoom) && (zoom !== 1)) {
                          offsetX = Math.round(offsetX / zoom);
                          offsetY = Math.round(offsetY / zoom);
                      }
                  }
                  if ((document.documentMode || 0) < 8) {
                      offsetX -= documentElement.clientLeft;
                      offsetY -= documentElement.clientTop;
                  }
              }
              offsetX = Math.round(offsetX);
              offsetY = Math.round(offsetY);
              return new Sys.UI.Point(offsetX, offsetY);
          };
      

      }

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-09-28
      • 1970-01-01
      • 1970-01-01
      • 2022-01-03
      • 1970-01-01
      • 2023-01-07
      • 1970-01-01
      相关资源
      最近更新 更多