首页 新闻 会员 周边

有关在线建站原理

0
悬赏园豆:5 [待解决问题]

现在好多服务商都提供在线建站服务,就是你在浏览器中对控件进行拖拽达到你想要的结果,然后保存之后就会生成你自己DIY出来的网站,这是什么原理,我知道首先元素要可以拖拽,然后要记录被拖动元素的坐标,把坐标存入数据库,然后用绝对定位把各元素定在指定位置,不过有没有大神做过这样的项目,能不能讲详细一些,具体实现过程和细节给科普一下

徐书帆的主页 徐书帆 | 初学一级 | 园豆:192
提问于:2016-04-12 09:50
< >
分享
所有回答(2)
0

 去下个orchard,学会怎么用就行了.

吴瑞祥 | 园豆:29449 (高人七级) | 2016-04-12 11:29

一般这样问问题的都是希望你用三句话讲清楚WINDOWS是怎么开发出来的,你能指望他用半年学习区区一个CMS系统......

支持(0) 反对(0) 爱编程的大叔 | 园豆:30839 (高人七级) | 2016-04-12 13:30
0

1.场景类,等同页面,拥有自己的坐标系及其他属性. 例如

function Scene(){
    this.offsetX;
    this.offsetY;
    this.bound ;   //页面的矩形
    this.animations; //页面具备的动画
    this.style;    //你可以理解为页面的一些css stytle
    this.children ;

    this.add = function(el,x,y){}
    this.remove = function(el){}

    this.render = function(){} //渲染

等等属性和方法
}

2.元素,每个元素对于web来说都是针对html 元素的二次封装的,每个元素除了拥有自己的针对场景的坐标外还拥有自己的坐标系,同时具备一些其他属性和方法,例如:

//所有元素基类
//存储所有元素通用的属性和方法
function Element( x,  y , bound ){
    this.x = x;
    this.y = y;
    this.bound = bound ; //元素的矩形大小,{X,X ,WIDTH , HEIGT }
    this.offsetX;
    this.offsetY;
    this.animations ;

    this.render= function(){}  //返回HTML 格式的字符串例如:<div>test</div>
}

//=> <img >
function ImageElement [extend Element ] (x, y  , source , w , h){
    this.source = source;

    this.render = function(){
        //s1: 组装属性转换为CSS
        //s2: 生产HTML的格式字符串
        return "<img src='xx' style="xxxx"></img>"
    }

}

 

原理就是这样的,实际生产中需要考虑的东西很多,如果还有其他问题,我们可以后面再深入的讨论下。

visonme | 园豆:1674 (小虾三级) | 2016-04-15 17:01
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册