使用JS和画布创建网站生成器

Creating a website builder with JS and canvas

本文关键字:网站 创建 JS 布创建 使用      更新时间:2023-09-26

我目前正在创建一个网站生成器,以便用户可以将元素拖放到页面上,调整元素大小和修改颜色等。

我想知道是否可以通过HTML5画布来完成,以便可以拖动事件等,然后当用户对画布中的视图感到满意时,我可以以某种方式将画布绘图转换为HTML和CSS。这可能吗?

如果是,怎么办?有人能给我举个例子吗?或者有更好的方法吗?

通常,当你发现应用程序为线框之类的东西做这件事时,它们不会生成非常有用的HTML。但不确定你的确切意图:

1使用画布:

看看http://www.kineticjs.com/用于将事件添加到画布上绘制的元素,用于调整元素大小和移动元素。不过,将canvas转换为html并不是一件容易的事,事实上,我想你最终会得到第2点。

2使用普通的html/css/js:

您为每个元素添加position:absolute,这样就可以拖动所有内容,您可以指定z-index来指定它是显示在另一个元素的上方还是下方。您可以很容易地将HTML复制出来,因为它只是复制当前源代码。然而,如果这被认为是一种生成体面html的方法,而不是仅仅作为线框/实体模型,那么这种方法就不太好了。

但是,我无法想象有这样一种情况,你可以使用一个设计器来制作可维护和整洁的HTML。

我的项目http://canvimation.github.com/在某种程度上做你想做的事。

我的项目的源代码位于https://github.com/canvimation/canvimation.github.com

主分支是当前的工作代码。我目前正在重新编写这个项目,以使代码更容易理解,调试一些元素,并使动画构建更容易。新的开发正在stage1分支上,但还不能在线运行,你必须复制代码才能运行它。欢迎你使用代码或派生项目。