数码资讯
Javascript中自定义模板的探讨
*由管理员创建的15-1-19。 * / 功能functionutil(){ } functionutil = { { 一个DOM节点是一个属性 HasAttr:功能(EL,name){ var attr = el.getattributenode el.getattributenode(名称);
选购提示
关注价格、性能、续航、售后和真实使用场景,理性比较后再下单。
*由管理员创建的15-1-19。
* /
功能functionutil(){
}
functionutil = { {
一个DOM节点是一个属性
HasAttr:功能(EL,name){
var attr = el.getattributenode el.getattributenode(名称);
返回属性attr.specified:假
},
根据类获取元素
GetByClass:功能(课堂上,oparent){
oparent = oparent文件| |;
如果(!oparent。getelementsbyclassname){
返回oparent.getelementsbyclassname(课堂上);
}
var arr = { };
VaR的欧洲自由贸易联盟= oparent.getelementsbytagname(*);
VaR reg = new RegExp('(^ | S)+ sclass +(的| $)');
/ /无功调节=新的正则表达式('(^ | { X20 T R F })+ sclass +({ X20 T R F } | $)');
对于(var i = 0;i < aele.length;i++){
如果(reg.test(欧洲自由贸易联盟{我}。className)){
Arr.push(欧洲自由贸易联盟{我});
}
}
报酬;
},
/ /动态添加样式表
addsheetfile:功能(路径){
VaR FileRef = document.createelement(链接)
fileref.rel =样式表;
fileref.type =文本/ CSS;
fileref.href =路径;
fileref.media =屏幕;
无功headobj = document.getelementsbytagname(很){ 0 };
headobj.appendchild(FileRef);
},
根据指定的格式,例如$
loadjsondata:功能(透明、ojson){
无功oparent = document.getelementbyid(透明);
如果(ojson instanceof Array){
var str = oparent.innerhtml;
对于(var i = 0;i < ojson.length - 1;i++){
oparent.innerhtml = str;
}
对于(VAR在ojson){
oparent。孩子{d} .innerHTML = oparent。孩子{d}。innerhtml.replace( / {( W +) } / g,功能(STR,1美元){
返回ojson {d} { } { } 1美元ojson { 1元}:;
});
}
{人}
oparent.innerhtml = oparent.innerhtml.replace( / {( W +) } / g,功能(STR,1美元){
返回ojson { 1美元1美元ojson { } }:;
});
}
},
根据指定的格式,如JSON /数据绑定
TemplateEngine:功能(HTML、期权){
(HTML = html.replace /(>)|(< / g),功能(STR,1美元,2美元){
开关(STR){
案件1美元:
返回>;
案件2美元:
返回< <;
}
});
var = % > / g,reexp = / } +)(^)/((如果|为|别的|开关|案例|打破| | { }))(。*)/ G代码= 'var R = {};游标= 0;
var =函数(行,js){
JS(代码= line.match(reexp):r.push(线+ +行+;'):
(代码=线=r.push!(+(line.replace / / g,' ' ));:;
返回添加;
}
而(赛= re.exec(HTML)){
添加(html.slice(光标,匹配。指数))(匹配{ 1 },真的);
光标= match.index +匹配{ 0 }。长度;
}
添加(html.substr(光标,html.length光标));
代码=返回(r.join );;
返回新的功能(code.replace( / { r T应用(选项);
}
}
1。第一种方法:$ }
functionutil.loadjsondata(元素、数据);
HTML代码:
名称:$ }
年龄:{年龄}
职业:{工作}
Javascript代码:
var数据{
{
姓名:Xu Lei,
年龄:24岁,
它的工作:
},
{
姓名:李磊,
年龄:23岁,
工作:翻译
}
};
functionutil.loadjsondata(数据的数据);
实施结果:
2,第二种方式
FunctionUtil.TemplateEngine(String,Object);
html代码:
< %如果(这。isshow){
对于(在这个数据中的var i){
姓名 uff1a
年龄:
工作:
Javascript代码:
var
数据:{
{
姓名:Xu Lei,
年龄:24岁,
它的工作:
},
{
姓名:李磊,
年龄:23岁,
工作:翻译
}
},
isshow:真
}
document.getelementbyid(试验).innerHTML = functionutil.templateengine(document.getelementbyid(试验).innerHTML,人);
结果uff1a
以上是本文的全部内容,朋友们已经看完javascript模板是否有了新的了解,希望大家能喜欢它。
声明:本文内容用于数码产品信息整理与选购参考,具体价格、库存、售后政策以官方渠道和电商页面实时信息为准。