JavaScript:将所见即所得编辑器对实时站点的更改转换为 jQuery 操作

标签 javascript jquery html iframe wysiwyg

上下文

作为 Meteor.JS 应用程序的一部分,我需要创建一个可视化编辑器,允许用户执行以下操作:

  1. 输入实时网站的 URL(可以是任何网站,无需 JS 代码段)
  2. 在应用内的 iframe/所见即所得编辑器中查看网站
  3. 选择该网页中的文本/图像并直观地更改其内容

在后端,我需要将上述操作转换为两部分:

  1. 一个 jQuery 选择器告诉我哪个元素已更改
  2. 指示新文本/图像网址的值。

问题

我发现以下所见即所得编辑器似乎非常适合此内容的编辑部分:https://www.froala.com/wysiwyg-editor/docs - 但是,有两点我不确定:

  1. 如果我在网站中加载此插件,我就可以使用它,但我不确定如何在第三方网站上使用它(例如 Chrome 开发工具)。
  2. 我不确定如何将所做的更改转换为 jQuery 选择器和值。

对这个问题的任何一个部分的任何见解将不胜感激。

最佳答案

对于有同样问题的人,我找到了两种方法来解决这个问题:

  1. JS Snippet:如果第三方网站有JS Snippet,您可以使用postMessage方法与之通信。更多信息请参见:https://developer.mozilla.org/en-US/docs/Web/API/Window/postMessage
  2. 无 JS Snippet:如果第三方网站没有 JS Snippet,您可以使用代理将网站加载到 iframe 中。代理充当中间人,允许您在将代码加载到 iframe 之前将代码注入(inject)到网站中。这里清楚地描述了过程:Proxying a site to be able to WYSIWYG edit in iframe - How does it work?

关于JavaScript:将所见即所得编辑器对实时站点的更改转换为 jQuery 操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36893388/

相关文章:

Javascript:注册事件处理程序的最佳场所

javascript - 如何从数据库中检索各个元素的数据并将其存储到自动 div 中

javascript - 如何使用 jquery/ajax 将下拉列表的选定值显示到文本框中

javascript - "Uncaught TypeError: Cannot call method ' indexOf ' of undefined"选中jqgrid行时

php - 如何隐藏表格行?

javascript - 我可以使用类似 javascript 的东西组合两个 html 按钮及其 onclick 方法吗?

javascript - 如何创建循环来创建变量?

javascript - 将列的鼠标悬停区域限制为其自身形状与周围区域

javascript - 隐藏后如何删除li空间?

java - Spring Controller 中搜索的方法不起作用