警告:我不是一个解释事情的好人,我的英语不是很完美,而且我对 php、javascript 和 jquery 有点菜鸟。如果您认为自己可以处理,请继续阅读。
所以,我有一个小系统,你可以在其中向网站添加 div,拖动它们并缩放它们。使用 jquery 很容易。但是,我正在尝试将更改保存到 css 和 html 文件,因此下次打开页面时,它就像您编辑它一样。
它还没有准备好,但我知道有可能做到这一点。但是,在完成它之前,我想知道是否有人建议如何以任何方式使其更简单或更好。
我将解释它现在是如何工作的:
用户添加了几个 div,缩放并拖动它们。(jQuery 用户界面)。当用户单击保存更改的按钮时,系统会检查主容器有多少子元素(所有用户创建的 div 都是主容器的子元素)。现在系统循环所有子元素并将它们的维度 ( width
, height
, left
, right
) 放入这样的数组[0]="200,300,500,500"
中。循环完成后,系统将数组连接成一个字符串,其中不同的元素用分号分隔。
系统发布字符串$.ajax()
并使用 php 文件读取它,这就是 php 文件中发生的情况:
php 将通过 post 得到的字符串解析成这样的数组
[0]="200,300,500,500"
现在它遍历数组的内容,将每个字符串解析为 4 个变量
$width = 200; $height = 300; $left = 500; $top = 500;
现在系统将这些值作为字符串放入另一个数组中,并将 css 代码添加到字符串中。所以这个新数组看起来像这样
[0] = "#div0{width:200px;height:300px;left:500px;top:500px;}."
数组完成后,系统将其内爆成字符串,删除旧
customstyle.css
文件并将字符串写入新customstyle.css
文件。
此处不包括自定义 html 文件的创建,但只需检查由发布数据组成的数组有多少个值,然后在 html 文件中创建等量的 div,其中每个 div 的 id 为“div(number) ”。
当页面加载时,php 包含自定义 css 和 html 文件。目标是拥有不需要 javascript 且 xhtml 有效且样式简单的索引页面,以及用于编辑且需要 javascript 的其他页面。
我认为这个系统太复杂了,有太多的数组等等。但我不知道如何让它更简单:)
我正在考虑在开始时使用 javascript 创建整个样式字符串并将其作为一个整体发布到 php 中,然后将它原样写入样式表。但它比现在大得多,发布它不会那么有效。(这并不重要,因为我是唯一一个尝试该系统的人,但感觉不对:P)