Namespace.register("U.CD.SL"); //注册示例项目区域 U.CD.SL.MySQL = "mysql"; //后台据此判断是到mongodb还是mysql。type是命令类型 U.CD.SL.Data = []; //保存示例中的数据,避免数据库频繁刷新。 U.CD.SL.PrePD = null; //保存了示例项目中评论和大图2个按钮,在onmouseover中切换状态。 U.CD.SL.W = null //示例项目 U.CD.SL.header_close = function () { $('#cgal_box')[0].remove(); } U.CD.SL.Init = function () { $('.UCD_SL_N').length != 0 ? $('.UCD_SL_N').parentg().parentg().parentg().remove() : '' U.UI.Form({ title: '成功案例', style: { 'overflow-y': 'none', 'overflow-x': 'nonw', width: 1010, height: 700 }, content: '
http://www.1473.cn
精品区域
提问区域
作业区域
控件区域
发布项目
' }) if (U.CD.SL.W) U.CD.SL.W.PSO.remove() // if (!$("#UCD_SL_N_F_R")[0].childNodes.length) U.D.AD.BDGG($("#UCD_SL_N_F_R")[0], '897767'); //百度广告,外部js加载不成功,导致本网站js不能运行,奇怪了 //暂时做几个功能,以后扩充。 //$('#cgal_box').remove(); //var cgal_box = $$('div', { 'class': 'cgal_box', 'id': 'cgal_box' }, document.body); //成功案例 box //var cgal_header = $$('div', { 'class': 'cgal_header', 'onmousedown': "U.M.StopBubble();U.D.DragMouseDown(this.parentNode);" }, cgal_box); //成功案例 头部 //$$('p', { 'class': 'header_title', 'innerHTML': '成功案例' }, cgal_header) //标题 //$$('div', { 'class': 'header_close', 'innerHTML': 'X', onclick: [U.CD.SL.header_close, ([])] }, cgal_header) //关闭图标 //$$('div', { 'class': 'box_content', 'id': 'box_content' }, cgal_box) //中部 //var conetent_top_b = $$('div', { 'class': 'conetent_top_b' }, $('#box_content')); //上面那个背景 //$$('img', { 'src': 'http://www.1473.cn/img/cloudlogo.png' }, conetent_top_b) //logo //var option_div = $$('div', { 'class': 'option_div' }, conetent_top_b) //选项卡 //$$('div', { 'class': 'header_li', 'innerHTML': '精品区域', onclick: [U.CD.SL.Type, (['JH'])] }, option_div); //选项 //$$('div', { 'class': 'header_li', 'innerHTML': '提问区域', onclick: [U.CD.SL.Type, (['TW'])] }, option_div); //选项 //$$('div', { 'class': 'header_li', 'innerHTML': '作业区域', onclick: [U.CD.SL.Type, (['ZY'])] }, option_div); //选项 //$$('div', { 'class': 'header_li', 'innerHTML': '控件区域', onclick: [U.CD.SL.Type, (['KJ'])] }, option_div); //选项 //$$('div', { 'class': 'header_li', 'innerHTML': '发布项目', onclick: [U.CD.SL.Type, (['FB'])] }, option_div); //选项 //var search_div = $$('div', { 'class': 'search_div' }, option_div); //输入框div //$$('input', { 'class': 'search_' }, search_div) //输入框 //var s_img = $$('img', { 'src': 'img/search.png', 'class': 'search_img' }, search_div) //搜索图标 //s_img.onclick = function () { // U.CD.SL.Sou(this); //} //var talk_div = $$('div', { 'class': 'talk_div' }, conetent_top_b) //$$('img', { 'src': 'http://www.1473.cn/img/qqew.jpg', onclick: "window.open('http://www.1473.cn')" }, talk_div) //$$('img', { 'src': 'img/in_wb.png', onclick: "window.open('http://widget.weibo.com/dialog/follow.php?fuid=3934163141&refer=c.1473.cn&language=zh_cn&type=widget_page&vsrc=app_followbutton&backurl=http%3A%2F%2Fc.1473.cn%2F&rnd=1479695872003')", 'id': 'followBtn' }, talk_div) //$$('img', { 'src': 'img/in_qq.png', onclick: "window.open('http://shang.qq.com/wpa/qunwpa?idkey=bd0da8199b3ba73a4812241efaba9b444b8cb7646016a13a7d31730c9c09e0a8')" }, talk_div) //var _lans = $("#UCD_SL_N_F")[0].getElementsByTagName("div"), i; //for (i = 0; i < _lans.length; i++) { if (_lans[i].innerHTML != "HTML5语言") _lans[i].onclick = U.M.apply(this, [[alert, (["有空看看http://www.1473.cn,有惊喜!"])]]) } //var _s = $("#UCD_SL")[0]; ////_s.style.width = document.body.clientWidth * 0.67 + "px"; //设置展示区域宽度 //_s.style.width = "1000px"; //_s.style.left = (document.body.clientWidth - parseInt(_s.style.width)) / 2 + "px"; //宽度居中 //_s.style.height = document.body.clientHeight - 20 - 20 - 80 + "px"; //减去头部和尾部高度 //_s.style.display = "block"; //显示或隐藏 //$("#UCD_SL_N_N")[0].style.height = _s.clientHeight - 100 + "px"; //选取数据库所有数据,参数1表示滚动加载的页数,以后再修正为滚动加载,数据库默认1次加载500条。 //为了避免频繁加载,结果需要保存到全局变量中。 if (!U.CD.SL.Data[U.CD.USLang]) { //try catch不成功?以后再搞 try { U.ACD.Request(U.CD.AjaxUrl, ([U.CD.SL.MySQL, "Select_All", 1, U.CD.USLang]), U.CD.SL.Display, ([""])); } catch (e) { alert("数据库连接暂时不成功,但不影响客户端操作"); } } else { //显示响应数据 $("#UCD_SL_N_N")[0].innerHTML = ""; U.CD.SL.DisFlow_cg(U.CD.SL.Data[U.CD.USLang]); } } //弹出切换语言窗口 U.CD.SL.L = function () { $('#UCD_L').length != 0 ? $('.UCD_SL_N').parentg().parentg().parentg().remove() : '' U.UI.Form({ title: '编程语言切换面板', style: { 'overflow': 'none', width: 537, height: 300 }, content: '
无需安装linux环境!无需复杂的配置!瞬间切换语言环境!
C语言
PHP
Python
Nodejs
Ruby
Perl
Lisp
Net
前端
' }) //var _b = $("#UCD_L_C")[0]; //_b.style.width = "537px"; //_b.style.left = (document.body.clientWidth - parseInt(_b.style.width)) / 2 + "px"; //宽度居中 // _b.style.height = document.body.clientHeight - 20 - 20 - 430 + "px"; //减去头部和尾部高度 //_b.style.display = "block"; //显示或隐藏 } //展示数据库中发布的项目 U.CD.SL.Display = function (r) { if (r.value == "" || r.value[0] == undefined) { return; } U.CD.SL.Data[U.CD.USLang] = r.value[0]; //获取mysql数据库返回的数据。 U.CD.SL.DisFlow_cg(r.value[0]); //U.CD.SL.cgal(r.value[0]); } //展示数据 U.CD.SL.DisFlow_cg = function (r) { var _nr = $("#UCD_SL_N_N")[0], i, _l; //_l流式布局个数定义 var userId = U.M.Cookies.get("usestudiosso") && U.M.Cookies.get("usestudiosso").split("&")[0].split("userid=").pop(); //当前登录用户的id _nr.innerHTML = ""; //首先清空上一次数据 if (!r.length) _nr.innerHTML = "
暂时无人添加示例,您可以来添加哦,分享是一种美德,点此分享!
"; _l = U.CD.SL.Flowlayout(_nr, 140, 7); //返回列数,如果已经做了流式布局,下一次进来不再调用此函数。 var a = r, len = a.length, tp; for (i = 0; i < len; i++) { for (j = i; j < len; j++) { if (Date.parse(a[i].CreateDate) < Date.parse(a[j].CreateDate)) { //按时间排序 降序 tp = a[i]; a[i] = a[j]; a[j] = tp; } } } r = a; for (i = 0; i < r.length; i++) { var _p = $("#UCD_SL_N_N").Child()[i % _l]; //找到流式布局点,追加相应元素,这是技巧 //var _src = "http://www.1473.cn/img/usestudiobackgroudnimage/beta1/bg1(1).jpg"; var _a = $$("div", { "className": "UCD_SL_N_N_C", "onmouseover": [[U.CD.SL.DisReply, (["retElement", r[i]])]], "onclick": [[U.CD.SL.DisOther, ([r[i]])]] }, _p); //单个样式 $$("img", { "className": "UCD_SL_N_N_C_I", "src": r[i].DImg, "onerror": [U.M.ImgError, (["this", 1])] }, _a); //图像样式 var _b = $$("div", { "className": "UCD_SL_N_N_C_RD" }, _a); //评论,大图样式 $$("div", { "className": "UCD_SL_N_N_C_R", "onclick": [[U.M.StopBubble], [U.CD.OU.Reply, ([r[i].DID])]] }, _b); //评论样式 //如果是管理员账号,则添加一个发布审核按钮。 if (U.CD.U.IsUSelf().userid == "baa5e5ae-0fc2-4eab-ba44-cd993d6ce5a1") $$("div", { "className": "UCD_SL_N_N_C_S", "innerHTML": "审核", "onclick": [[U.M.StopBubble], [U.CD.SL.VerConfirm, ([r[i]])]] }, _b); //评论样式 $$("div", { "className": "UCD_SL_N_N_C_D", "onclick": [[U.M.StopBubble], [U.Img.Create, ([{ 'Img': r[i].DImg, 'Thm': r[i].DSmallImg }])]] }, _b); //大图样式 r[i].DBrief = r[i].DBrief.replace(/\r\n/g, '
'); //换行符号处理 $$("div", { "className": "UCD_SL_N_N_C_T", "title": r[i].DName, "innerHTML": r[i].DName }, _a); //标题样式 $$("div", { "className": "UCD_SL_N_N_C_N", "innerHTML": r[i].DBrief }, _a); //内容样式 // if (userId && (userId == r[i].UserID)) { //只有用户自己的案例才可以修改 $$("div", { "className": "UCD_SL_N_N_C_XG", "onclick": [[U.M.StopBubble], [U.CD.SL.Publish, [null, US.userinfo.UserId, r[i]]]] }, _b); //修改 $$("div", { "className": "UCD_SL_N_N_C_SC", "onclick": [[U.M.StopBubble], [function (id, div) { //删除的函数 U.UI.Confirm("确定要删除吗?", [function (id, div) { //confirm var rt = U.ACD.Request(U.CD.AjaxUrl, ([U.CD.SL.MySQL, "Develop_delete_example", id]), 0, ([""])); //删除数据库案例 if (rt.value.affectedRows == 1) { //影响行数 $(div).remove(); //把div删除了 U.Alert("删除成功!"); //弹个框 } } , ([id, div])], [function () { } , ([])]); } , [r[i].DID, _a]]]//id和div传进去 }, _b); //删除 // } } } //精华,提问,等切换区域 U.CD.SL.Type = function (t) { //如果前台有数据,切换时筛选数据 var d = U.CD.SL.Data[U.CD.USLang], n = d.length, i, _r = []; if (d) { for (i = 0; i < n; i++) { if (d[i].DType == t) _r.push(d[i]); } } // U.CD.SL.cgal(_r); U.CD.SL.DisFlow_cg(_r); } //搜索函数 U.CD.SL.Sou = function (o) { var s = o.parentNode.getElementsByTagName("input")[0].value; var d = U.CD.SL.Data[U.CD.USLang], n = d.length, i, _r = []; if (d) { for (i = 0; i < n; i++) { if (d[i].DName.indexOf(s) > -1) _r.push(d[i]); } } //U.CD.SL.cgal(_r); U.CD.SL.DisFlow_cg(_r); } //鼠标移动到相关条目时弹出查看该项目评论信息。 U.CD.SL.DisReply = function (SO, r) { //给SO添加2个div,用来查看评论和大图 var _s, i; if (U.CD.SL.PrePD) { if (U.CD.SL.PrePD.childNodes[1]) { _s = U.CD.SL.PrePD.childNodes[1].childNodes; for (i = 0; i < _s.length; i++) { _s[i].style.display = "none"; } } } _s = SO.childNodes[1].childNodes; for (i = 0; i < _s.length; i++) { _s[i].style.display = "block"; } U.CD.SL.PrePD = SO; } //弹出审核确认取消框。 U.CD.SL.VerConfirm = function (r) { U.UI.Confirm("你确定取消" + r.DName + "在首页中的显示吗?", [U.CD.SL.Verify, ([r])], ""); } //去数据库通过审核,展示在前台供其他用户查看项目。 U.CD.SL.Verify = function (r) { U.ACD.Request(U.CD.AjaxUrl, ([U.CD.SL.MySQL, "Add_Develop", r.DID, r.UserID, r.UserName, r.DName, r.DBrief, r.DSmallImg, r.DImg, r.DPrice, "0"]), U.CD.SL.VerifyAsyn, ([""])); } //数据库是否成功 U.CD.SL.VerifyAsyn = function (r) { r.value[0].length ? alert("审核成功") : alert("审核失败"); } //展示其他人的项目。 U.CD.SL.DisOther = function (u) { //window.open("http://c.1473.cn/" + "#!/" + encodeURI(u.DID + "|" + u.UserID));//采用新窗口模式 //U.CD.Url.Param(["#!", u.DID + "|" + u.UserID]); $("#UCD_SL")[0].style.display = "none"; U.CD.Url.Param([u.DID + "|" + u.UserID]); //采用本窗口加载模式 } //流式布局函数,封装起来,以后给UC。参数1为大的元素,参数2为小元素的宽度,各个小元素的margin,此函数返回值为列数 U.CD.SL.Flowlayout = function (NR, W, M) { // var _a = NR.clientWidth, i; //大容器宽度 //var _num = Math.floor(_a / (W + 2 * M)); //小元素宽度 //添加列数到大元素 // for (i = 0; i < _num; i++) { // $$("div", { "style": { "width": W + "px", "margin": M + "px" }, "className": "UCD_SL_N_N_L" }, NR); //追加流式布局的包容器 // } // return _num; var _a = NR.clientWidth, i; //大容器宽度 var _num = Math.floor(_a / (W + 2 * M)); //小元素宽度 //添加列数到大元素 for (i = 0; i < 5; i++) { $$("div", { "style": { "width": "185px", "margin-right": "10px" }, "className": "UCD_SL_N_N_L" }, NR); //追加流式布局的包容器 } return _num; } //-------------------------------------------------------------------发布项目到首页区域----------------------------------------------------- //发布一个项目,会添加到示例项目区域。 U.CD.SL.Publish = function (SO, userid, node) { //到数据库查询是否已经发不过。 U.ACD.Request(U.CD.AjaxUrl, ([U.CD.SL.MySQL, "Select_One", node.DID]), U.CD.SL.ISPub, (["", SO, userid, node])); } //--------------------------------------UJ框架RadioList控件------------------------------------------------- //S是一个json,表示多个Checkbox的内容,D表示需要生成checkbox的父亲元素,比如一个div //调用方法。//var ra = U.UI.RadioList($("#UCD_FB_N_CK_CK")[0], { "TW": "提问", "ZY": "作业", "JH": "精华", "CT": "控件" }); //取值方法 ra.value();可以获取用户选择的值。 U.UI.RadioList = function (D, S) { var T = new U.UI.RadioListT(D, S); T.init(); //初始化单选按钮组。 return T; } U.UI.RadioListT = function (D, S) { if (U.M.GetType(S) != "Object") return; //如果不是数组,返回 D.innerHTML = ""; //清空以前的 this.D = D; this.S = S; this.A = []; //所有checkbox元素,用于选择, //返回选中的Checkbox。 } U.UI.RadioListT.prototype = { init: function () { var S = this.S, p, c; //得到Checkbox长度,p为span,c为checkbox for (var s in S) { if (S.hasOwnProperty(s)) { p = $$("div", { "innerHTML": S[s], "style": { "cssText": "margin-left:5px;" } }, this.D); c = $$("input", { "type": "radio", "value": s, "onclick": [this.radiochecked, ([this, "retElement"])] }, p); this.A.push(c); } } this.A[0].checked = true; }, //选中函数,其他全部不选中,单击的元素选中。r为保证作用域,"retElement"表示radio元素本身。 radiochecked: function (r, o) { var i; for (i = 0; i < r.A.length; i++) r.A[i].checked = false; o.checked = true; }, //返回被选中的值 value: function () { var i; for (i = 0; i < this.A.length; i++) if (this.A[i].checked == true) return this.A[i].value; return this.A[0].value; //默认返回第一个元素 } } //检测以前是否发布过的异步函数 U.CD.SL.ISPub = function (r) { //清空以前数据 var SO = r.context[1] , userid = r.context[2] , node = r.context[3]; //得到传递的参数 var _r = r.value[0]; //得到数据库的值。 //如果没获取到数据,表示没发不过,所有选项清空,否则,表示修改,把数据库的值赋予各个选项。 if (_r.length == 0) { $("#UCD_FB_N_N_Name")[0].value = "", $("#UCD_FB_N_N_T")[0].value = "", $("#UCD_FB_NR_IMG")[0].value = "", $("#UCD_FB_N_N_P")[0].value = ""; } else { _r = _r[0]; $("#UCD_FB_N_N_Name")[0].value = _r.DName, $("#UCD_FB_N_N_T")[0].value = _r.DBrief, $("#UCD_FB_NR_IMG")[0].src = _r.DSmallImg, $("#UCD_FB_N_N_P")[0].value = _r.DPrice; } var _UDUP = $("#UCD_FB")[0]; //获取命令窗口 //var _NR = $("#UCD_FB_N_N")[0]; _NR.innerHTML = ""; //获取内容窗口 if (_r.DName) $("#UCD_FB_N_T")[0].innerHTML = "您已经发不过" + node.Name + "了?但还可以修改相应信息"; else $("#UCD_FB_N_T")[0].innerHTML = "您将要发布" + node.Name + "吗?此项目将对所有人可见!"; $("#UCD_FB_N_N_Name")[0].value = node.Name; //给标题赋值 //生成CheckBoxList var ra = U.UI.RadioList($("#UCD_FB_N_CK_CK")[0], U.CD.DType); $("#UCD_FB_NR_IMG")[0].onclick = U.M.apply(this, [[U.M.StopBubble], [U.Img.Create, [([{ 'Thm': _r.DSmallImg, 'Img': _r.DImg }])]]]); $("#UCD_FB_N_N_N_S")[0].onclick = U.M.apply(this, [[U.CD.SL.PSubmit, ([SO, userid, node, ra])]]); //给提交按钮赋值 _UDUP.style.display = "block"; U.UI.Form({ id: "UCD_FB_Pop", title: '发布项目窗口', style: { 'overflow-y': 'none', 'overflow-x': 'nonw', width: 500, height: 500 }, //bst: _UDUP content: _UDUP }) //onclick直接响应 } //单击发布按钮,发布到mysql U.CD.SL.PSubmit = function (SO, userid, node, ra) { var _c = U.CD.U.IsUSelf(); //获取用户登录Cookie. _c.userid _c.username _c.Loginid if (!_c) { U.CD.U.LoginApply(); return; } //如果未登录,弹出登录窗口。 //_n名字 _b简介 -i图片 _p价格。 var _n = $("#UCD_FB_N_N_Name")[0].value , _b = $("#UCD_FB_N_N_T")[0].value; var _s = $("#UCD_FB_NR_IMG")[0].title; _i = $("#UCD_FB_NR_IMG")[0].src, _p = $("#UCD_FB_N_N_P")[0].value; var username = _c.username; //cookie中的用户名 //id为项目id,存储在mongodb中, //提交到数据库,ra.value()表示提交到精华区域、学习区域的类型, U.CD.USLang表示提交到哪一个语言。"1"表示发布到首页。 U.ACD.Request(U.CD.AjaxUrl, ([U.CD.SL.MySQL, "Add_Develop", node.ID, userid, username, _n, _b, _s, _i, _p, "1", U.CD.USLang, ra.value()]), U.CD.SL.PSubAsyn, ([""])); } //发布成功后异步函数。 U.CD.SL.PSubAsyn = function (r) { r.value[0].length ? alert("发布项目成功") : alert("发布项目失败"); } //新用户发布自己的项目 U.CD.SL.PubPro = function () { var _c = U.CD.U.IsUSelf(); //获取用户登录Cookie. _c.userid _c.username _c.Loginid if (!_c) { U.CD.U.LoginApply(); return; } //如果未登录,弹出登录窗口。 alert("请在右边项目区域单击操作图标,发布自己的项目,谢谢!!!!"); //U.CD.RT.CProject(_c.userid, U.CD.U.CUser.TNode[0]); //U.CD.RT.Panel(); } //切换各种语言示例程序 U.CD.SL.LangSL = function (l) { U.CD.USLang = l; //更改当前语言 U.CD.CL.Init(U.CD.USLang); //重新初始化左边语言栏目。 //U.CD.SL.Init(); //调用示例首页程序。 $("#UCD_TT_T_N")[0].innerHTML = U.CD.USLang + "语言"; }