问题 #705💬 已回答提出于 2018年1月4日作者 austinbiggs2 个反应

渲染元素的拖拽占位符

快速解答作者 artf1

这大概也是我放弃😂的原因 正如你从这里看到的 https://github.com/artf/grapesjs/blob/dev/src/commands/view/MoveComponent.js#L74 我尝试使用“setDragHelper”,它复制了“getComputedStyle”中的元素样式,但我也移除了它的子节点“dragHelper.innerHTML = ''',因为获取内部样式可能成本过高。目前,我看到以下可能的解决方案:只显示元素的形状让用户定义其函数返回占位符元素找到使用原生HTML5 d&d“幽灵”图像的方法(已经生成该元素的截图)。其中一个问题是通过点击外部元素(在我们这里是move图标)来触发拖拽...

阅读下方完整回答 ↓

问题

你好!我在翻代码,想在拖动元素时实现占位符效果?拖拽方块已经有类似的做法了。

如果我想添加什么来实现这个效果,我需要修改或挂钩到什么方法?我在画布上没有看到元素的 startDrag 选项。

  /**
   * 起跑块拖拽声
   * @private
   */
  startDrag: function startDrag(e) {
    右击还是中位击
    如果 (e.button !== 0) {
      返回;
    }

if (!this.config.getSorter) {
      返回;
    }

this.config.em.refreshCanvas();
    var sorter = this.config.getSorter();
    sorter.setDragHelper(this.el, e);
    sorter.setDropContent(this.model.get('content'));
    sorter.startSort(this.el);
    (0,_mixins.on)(文档,'mouseup',this.endDrag);
  },

类似:http://gridstackjs.com/

回答(3)

artf2018年1月4日

这大概也是我放弃😂的原因 正如你从这里看到的 https://github.com/artf/grapesjs/blob/dev/src/commands/view/MoveComponent.js#L74 我尝试使用“setDragHelper”,它复制了“getComputedStyle”中的元素样式,但我也移除了它的子节点“dragHelper.innerHTML = ''',因为获取内部样式可能成本过高。目前,我看到以下可能的解决方案:只显示元素的形状让用户定义其函数返回占位符元素找到使用原生HTML5 d&d“幽灵”图像的方法(已经生成该元素的截图)。其中一个问题是通过点击外部元...

artf2018年1月20日

不幸的是,移动组件的方式略有不同,所以我还在努力中

相关问答

通过相似的问题讨论继续研究。

与此问题匹配的付费插件

根据问题关键词和标签相关性精选,助你更快交付。

查看全部插件

正在加载付费插件推荐……

免费方案

在以下平台查看开源 GrapesJS 插件: GitHub 或在我们的免费目录中快速搜索。

浏览免费插件 →
高级方案

高级插件提供支持、定期更新和生产就绪的功能——为你节省数天的集成工作。

浏览高级插件 →

浏览插件分类

直接跳转到市场上的插件分类页面。