📄 templet.js
字号:
jspp.using("mocom.WAPmo.Kernel");
Templet = new function()
{
//cache
this.cache = new Array();
this.locked = null;
this.TYPE_INVALID = 0;
this.TYPE_VALID = 1;
this.widthAlign = 40;
this.widthItem = 100;
this.moveFlag = false;
this.name = "";
this.type = 0;
this.row = 0;
this.col = 0;
};
Templet.create = function(x, y)
{
var core = this;
var objVector = document.getElementById("_templet");
if (objVector == null)
{
objVector = document.createElement("DIV");
objVector.id = "_templet";
document.body.appendChild(objVector);
}
var objTable = document.getElementById("_main_");
if (objTable)
{
objTable.parentNode.removeChild(objTable);
}
objTable = document.createElement("TABLE");
objVector.appendChild(objTable);
objTable.id = "_main_";
objTable.width = (y - 1) * core.widthItem + core.widthAlign;
objTable.border = "1";
objTable.cellPadding = "0";
objTable.cellSpacing = "0";
objTable.borderColor = "#C0C0C0";
objTable.style.borderCollapse = "collapse";
objTable.style.tableLayout = "fixed";
objTable.style.wordBreak = "break-all";
objTable.style.wordWrap = "break-word";
for (var i = 0; i < x; i++)
{
var objTR = objTable.insertRow(i);
for (var k = 0; k < y; k++)
{
core.createCell(objTR, i, k);
}
}
core.row = x;
core.col = y;
};
Templet.createCell = function(objParent, i, k)
{
var core = this;
var objTD = objParent.insertCell(k);
objTD.id = "_item_" + i + "_" + k + "_";
objTD.height = "24";
if (i == 0 && k == 0)
{
objTD.width = core.widthAlign;
objTD.align = "center";
objTD.style.backgroundColor = "#C8E3FF";
objTD.innerHTML = "<img src=\"images/xw_table0.gif\" border=\"0\" />";
objTD.onmouseover = function()
{
this.style.backgroundColor = "#DFEFFF";
};
objTD.onmouseout = function()
{
this.style.backgroundColor = "#C8E3FF";
};
objTD.oncontextmenu = function(ev)
{
core.callControlMenu(ev);
};
}
else if (i == 0)
{
objTD.width = core.widthItem;
objTD.align = "center";
objTD.style.backgroundImage = "url(images/xw_back6.gif)";
objTD.onmouseover = function()
{
this.style.backgroundImage = "url(images/xw_back7.gif)";
};
objTD.onmouseout = function()
{
this.style.backgroundImage = "url(images/xw_back6.gif)";
};
objTD.style.fontSize = "12px";
objTD.style.fontFamily = "Arial Black";
objTD.innerHTML = k;
objTD.oncontextmenu = function(ev)
{
core.callHeadMenu(ev);
};
}
else if (k == 0)
{
objTD.width = core.widthAlign;
objTD.align = "center";
objTD.style.fontSize = "12px";
objTD.style.fontFamily = "Arial";
objTD.style.backgroundColor = "#C8E3FF";
objTD.innerHTML = "左";
objTD.onmouseover = function()
{
this.style.backgroundColor = "#DFEFFF";
};
objTD.onmouseout = function()
{
this.style.backgroundColor = "#C8E3FF";
};
objTD.oncontextmenu = function(ev)
{
core.callAlignMenu(ev);
};
}
else
{
objTD.width = core.widthItem;
objTD.style.fontSize = "12px";
objTD.style.fontFamily = "Arial";
objTD.setAttribute("type", core.TYPE_INVALID);
objTD.onmouseover = function(ev)
{
this.style.backgroundColor = "#FFCC99";
core.callHint(ev);
};
objTD.onmouseout = function()
{
if (this != core.locked)
{
this.style.backgroundColor = "#FFFFFF";
}
};
objTD.oncontextmenu = function(ev)
{
var ee = window.event || ev;
core.hiddenControl();
core.hiddenHead();
core.hiddenAlign();
core.hiddenHint();
if (core.locked)
{
core.locked.style.backgroundColor = "#FFFFFF";
}
core.locked = this;
core.locked.style.backgroundColor = "#FFCC99";
var x = ee.clientX;
var y = ee.clientY;
var _w = 200;
var _h = 200;
var objDiv = document.getElementById("_menu_");
if (objDiv == null)
{
objDiv = document.createElement("DIV");
document.body.appendChild(objDiv);
objDiv.id = "_menu_";
objDiv.style.position = "absolute";
objDiv.style.width = _w + "px";
objDiv.style.height = _h + "px";
objDiv.style.border = "1px solid #000000";
objDiv.style.backgroundColor = "#FFFFFF";
objDiv.style.padding = "2px";
objDiv.style.overflowX = "hidden";
objDiv.style.overflowY = "auto";
objDiv.appendChild(core.createItem("ID_MENU_EDIT", "xw_edit0.gif", "编辑", core.callEdit));
objDiv.appendChild(core.createItem("ID_MENU_DELETE", "xw_del0.gif", "删除", core.callDelete));
objDiv.appendChild(core.createLine());
objDiv.appendChild(core.createItem("ID_MENU_TEXT", "xw_button0.gif", "输出一段文字", callAPI, "Text"));
objDiv.appendChild(core.createItem("ID_MENU_IMAGE", "xw_button1.gif", "输出一张图片", callAPI, "Image"));
objDiv.appendChild(core.createItem("ID_MENU_LINK", "xw_button2.gif", "输出一个连接", callAPI, "Link"));
objDiv.appendChild(core.createLine());
var i = 0;
objDiv.appendChild(core.createItem("ID_MENU_API_" + i++, "xw_button3.gif", "输出用户入口", callAPI, "UserEntry"));
objDiv.appendChild(core.createItem("ID_MENU_API_" + i++, "xw_button3.gif", "输出所有主题", callAPI, "Themes"));
objDiv.appendChild(core.createItem("ID_MENU_API_" + i++, "xw_button3.gif", "输出一个主题", callAPI, "Theme"));
objDiv.appendChild(core.createItem("ID_MENU_API_" + i++, "xw_button3.gif", "输出当前栏目的LOGO/标题", callAPI, "StapleLogoOrTitle"));
objDiv.appendChild(core.createItem("ID_MENU_API_" + i++, "xw_button3.gif", "输出当前栏目的LOGO", callAPI, "StapleLogo"));
objDiv.appendChild(core.createItem("ID_MENU_API_" + i++, "xw_button3.gif", "输出当前栏目的标题", callAPI, "StapleTitle"));
objDiv.appendChild(core.createItem("ID_MENU_API_" + i++, "xw_button3.gif", "输出当前栏目的说明", callAPI, "StapleContent"));
objDiv.appendChild(core.createItem("ID_MENU_API_" + i++, "xw_button3.gif", "输出当前栏目的下级栏目", callAPI, "Staples"));
objDiv.appendChild(core.createItem("ID_MENU_API_" + i++, "xw_button3.gif", "输出当前栏目的内容列表", callAPI, "Contents"));
objDiv.appendChild(core.createItem("ID_MENU_API_" + i++, "xw_button3.gif", "输出指定栏目的内容列表", callAPI, "Contentx"));
objDiv.appendChild(core.createItem("ID_MENU_API_" + i++, "xw_button3.gif", "输出当前内容的标题", callAPI, "ContentTitle"));
objDiv.appendChild(core.createItem("ID_MENU_API_" + i++, "xw_button3.gif", "输出当前内容", callAPI, "Content"));
objDiv.appendChild(core.createItem("ID_MENU_API_" + i++, "xw_button3.gif", "输出加入书签入口", callAPI, "MarkerEntry"));
objDiv.appendChild(core.createItem("ID_MENU_API_" + i++, "xw_button3.gif", "输出一条广告", callAPI, "Ads"));
objDiv.appendChild(core.createItem("ID_MENU_API_" + i++, "xw_button3.gif", "输出返回所属栏目", callAPI, "BackStaple"));
objDiv.appendChild(core.createItem("ID_MENU_API_" + i++, "xw_button3.gif", "输出返回所属主题", callAPI, "BackTheme"));
objDiv.appendChild(core.createItem("ID_MENU_API_" + i++, "xw_button3.gif", "输出返回首页", callAPI, "BackHome"));
objDiv.appendChild(core.createItem("ID_MENU_API_" + i++, "xw_button3.gif", "输出当前内容的发布人", callAPI, "ContentOwner"));
objDiv.appendChild(core.createItem("ID_MENU_API_" + i++, "xw_button3.gif", "输出新短信提示入口", callAPI, "SMSHint"));
objDiv.appendChild(core.createItem("ID_MENU_API_" + i++, "xw_button3.gif", "输出当前内容的评论", callAPI, "ContentRemark"));
objDiv.appendChild(core.createItem("ID_MENU_API_" + i++, "xw_button3.gif", "输出当前位置", callAPI, "Path"));
objDiv.appendChild(core.createItem("ID_MENU_API_" + i++, "xw_button3.gif", "输出当前在线用户列表", callAPI, "Online"));
objDiv.appendChild(core.createItem("ID_MENU_API_" + i++, "xw_button3.gif", "输出一个表单", callAPI, "Form"));
objDiv.appendChild(core.createItem("ID_MENU_API_" + i++, "xw_button3.gif", "输出当前栏目的发布信息入口", callAPI, "Publish"));
objDiv.appendChild(core.createItem("ID_MENU_API_" + i++, "xw_button3.gif", "输出指定栏目的下级栏目", callAPI, "Staples1"));
objDiv.appendChild(core.createItem("ID_MENU_API_" + i++, "xw_button3.gif", "输出当前栏目的搜索表单", callAPI, "StapleForm"));
objDiv.appendChild(core.createItem("ID_MENU_API_" + i++, "xw_button3.gif", "输出当前栏目的内容列表1", callAPI, "Contents1"));
objDiv.appendChild(core.createItem("ID_MENU_API_" + i++, "xw_button3.gif", "输出指定栏目的内容列表1", callAPI, "Contentx1"));
objDiv.appendChild(core.createItem("ID_MENU_API_" + i++, "xw_button3.gif", "输出所有分类", callAPI, "Category"));
objDiv.appendChild(core.createItem("ID_MENU_API_" + i++, "xw_button3.gif", "输出返回所属分类", callAPI, "BackCategory"));
}
_w += (jspp.isIE ? 0 : 6);
_h += (jspp.isIE ? 0 : 6);
if (x + _w > document.body.clientWidth)
{
objDiv.style.left = document.body.scrollLeft + x - _w;
}
else
{
objDiv.style.left = document.body.scrollLeft + x;
}
if (y + _h > document.body.clientHeight)
{
objDiv.style.top = document.body.scrollTop + y - _h;
}
else
{
objDiv.style.top = document.body.scrollTop + y;
}
objDiv.style.display = "";
var ptr = document.getElementById("ID_MENU_EDIT");
ptr.disabled = (atol(core.locked.getAttribute("type")) == core.TYPE_INVALID);
ptr = document.getElementById("ID_MENU_DELETE");
ptr.disabled = (atol(core.locked.getAttribute("type")) == core.TYPE_INVALID);
};
core.doMove(objTD);
}
objTD.style.cursor = "default";
};
Templet.doMove = function(obj)
{
var core = this;
var _x, _y;
obj.onmousedown = function(ev)
{
var ee = window.event || ev;
if (ee.button < 2)
{
core.hiddenControl();
core.hiddenMenu();
core.hiddenHead();
core.hiddenAlign();
core.hiddenHint();
var o = Window.getOffset(ee.srcElement);
_x = ee.clientX - o.left;//ee.offsetX;
_y = ee.clientY - o.top;//ee.offsetY;
if (core.locked)
{
core.locked.style.backgroundColor = "#FFFFFF";
}
core.locked = this;
core.locked.style.backgroundColor = "#FFCC99";
var ptr = document.getElementById("_mapping_");
if (ptr == null)
{
ptr = document.createElement("DIV");
document.body.appendChild(ptr);
ptr.id = "_mapping_";
ptr.style.position = "absolute";
ptr.style.width = obj.offsetWidth + (jspp.isMO ? -1 : 1);
ptr.style.height = obj.offsetHeight + (jspp.isMO ? -1 : 1);
ptr.style.border = "1px solid #0080FF";
}
ptr.style.left = ee.clientX - _x;
ptr.style.top = ee.clientY - _y;
ptr.style.display = "";
if (ptr.setCapture)
{
ptr.setCapture();
}
else if (window.captureEvents)
{
window.captureEvents(Event.MOUSEMOVE|Event.MOUSEUP);
}
document.onmousemove = function(ev)
{
var ee = window.event || ev;
var x = ee.clientX - _x;
var y = ee.clientY - _y;
ptr.style.left = x;
ptr.style.top = y;
};
document.onmouseup = function(ev)
{
core.moveFlag = true;
var ee = window.event || ev;
var et = ee.srcElement;
if (ptr.releaseCapture)
{
ptr.releaseCapture();
}
else if (window.releaseEvents)
{
window.releaseEvents(Event.MOUSEMOVE|Event.MOUSEUP);
}
document.onmousemove = null;
document.onmouseup = null;
ptr.style.display = "none";
};
}
};
};
Templet.doOver = function(ev)
{
var core = this;
var ee = window.event || ev;
var et = ee.srcElement;
if (core.moveFlag == true)
{
if (/^_item_(\d+)_(\d+)_$/i.test(et.id) == true)
{
core.moveFlag = false;
if (core.locked != et)
{
core.translate(et, core.locked);
core.locked.style.backgroundColor = "#FFFFFF";
core.locked = et;
core.locked.style.backgroundColor = "#FFCC99";
}
}
else
{
core.moveFlag = false;
}
}
};
Templet.transAttr = function(objA, objB, attr)
{
var val = objA.getAttribute(attr);
objA.setAttribute(attr, objB.getAttribute(attr));
objB.setAttribute(attr, val);
};
Templet.translate = function(objA, objB)
{
var core = this;
core.transAttr(objA, objB, "type");
core.transAttr(objA, objB, "value");
core.transAttr(objA, objB, "API");
var html = objA.innerHTML;
objA.innerHTML = objB.innerHTML;
objB.innerHTML = html;
};
Templet.hiddenAll = function()
{
var core = this;
core.hiddenControl();
core.hiddenMenu();
core.hiddenHead();
core.hiddenAlign();
};
Templet.hiddenControl = function()
{
var objDiv = document.getElementById("_control_");
if (objDiv)
{
objDiv.style.display = "none";
}
};
Templet.hiddenMenu = function()
{
var objDiv = document.getElementById("_menu_");
if (objDiv)
{
objDiv.style.display = "none";
}
};
Templet.hiddenHead = function()
{
var objDiv = document.getElementById("_head_");
if (objDiv)
{
objDiv.style.display = "none";
}
};
Templet.hiddenAlign = function()
{
var objDiv = document.getElementById("_align_");
if (objDiv)
{
objDiv.style.display = "none";
}
};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -