【问题标题】:How to select multiple elements in RadEditor in ie11如何在ie11的RadEditor中选择多个元素
【发布时间】:2018-08-02 19:16:41
【问题描述】:

我正在开发一个基于 ASP.NET 的应用程序,在 IE11 中运行。

应用程序的一部分使用 (Telerik) RadEditor 创建多个项目的布局。我正在尝试实现一个功能,允许用户选择多个元素,然后垂直或水平对齐它们。有人告诉我,这个功能在过去的某个时候可以工作,但是当 IE 从 9 升级到 10 或从 10 升级到 11 时停止工作。

我可以通过按住 control+单击来选择(选择边框显示在所有选定元素上)页面中的多个元素(在 (Telerik) RadEditor 内容空间中)。我的问题是编辑器找不到所有选中的元素,而是返回第一个。

相关(Javascript)代码是:

var editor = $find("RadEditor1");
var theSelectionObject = editor.getSelection();
var tempElem = editor.getSelectedElement();

theSelectionObjecttempElem 都是对单个对象的引用。如何获取所有选定元素的集合或以其他方式确定选择哪些元素以在以后的代码中使用?

【问题讨论】:

  • 我认为这就是你所需要的:telerik.com/support/code-library/… 如果你不能让它工作,那么请告诉我,我会尽力帮助你实现它。
  • 查看您链接的代码,我不认为它试图解决与我相同的问题,但我正在尝试。当我在工具栏中选择新选项时,出现 404 错误。我应该把 CssExtender.aspx 文件放在哪里?当前请求的 url 是“/Providers/HtmlEditorProviders/ToFlexWYSIWYGProvider09/Toolbars/CssExtender.aspx”,但在我的项目中找不到。
  • CssExtender.aspx 是您必须根据放置位置创建和修改位置的编辑器帮助页面。这可能超出了您的需要。我认为您可以尝试使用 RadEditor.getSelectedElement() 而不是 .getSelection()。
  • @DaniDev 我制作了 CssExtender.aspx 文件,它位于我从中加载它的文件旁边的目录中。我不明白在哪里或如何包含它。我尝试使用 getSelectedElement() ,它只返回一个元素。我正在尝试同时获取多个元素。
  • 是的,我知道您正在尝试这样做。看来 Telerik 提供的功能可能无法为您做到这一点。但好消息是您可以编写自己的 JavaScript 库函数,该函数将在您的编辑器中获取所有选定的元素。讨论中的示例可能会对您有所帮助,因为它展示了如何实现编辑器帮助界面,通过 CSS 类选择多个元素

标签: javascript asp.net telerik internet-explorer-11 radeditor


【解决方案1】:

IE 版本的浏览器 execCommand 方法提供了一个 MultipleSelection 选项,当用户按住 SHIFT 或 CTRL 键时,该选项允许一次选择多个站点可选元素。你可以在https://docs.microsoft.com/en-us/previous-versions/windows/internet-explorer/ie-developer/platform-apis/hh801232(v%3dvs.85)#multipleselection找到更多信息

要通过 RadEditor API 触发此方法,请执行以下操作:

editor.get_document().execCommand('MultipleSelection', true, true);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-11-18
    • 1970-01-01
    • 2016-08-16
    • 1970-01-01
    • 2023-03-11
    • 2019-11-12
    • 2015-12-15
    相关资源
    最近更新 更多