0
我想從var options = {}
動態創建選項卡html數據。從json選項生成html
我被困在tabs_html()
函數,我必須迭代選項並創建html.see的嵌套數據。
我不想在js中使用html代碼,而是使用像$('<ul/>'
和$('<li/>'
這樣的對象來創建它。
JS:JSFIDDLE
var structure = [
{
"title": "tabs-1",
"data": {
"type": "t1",
"title": "title hover"
},
"content": "Some Content"
},
{
"title": "tabs-2",
"data": {
"type": "t2",
"title": "title2 hover"
},
"content": "Some Content2"
}];
function tabs_html(structure) {
var id = "tabs";
var $wrapper_div = $('<div/>', {
id: id
});
$.each(structure) {
// make ul li and div
// Not use html , instead use objects like $('<ul/>' and $('<li/>'
// id of li`s will be id+_1 id+2 etc
}
$wrapper_div.append(above_each_data)
return $wrapper_div;
}
$("body").append(tabs_html(structure));
樣本HTML輸出:
<!-- Sample Output
<div id="tabs">
<ul>
<li><a href="#tabs-1" data-type="t1" data-title="title hover" >tabs-1</a> </li>
<li><a href="#tabs-2" data-type="t2" data-title="title2 hover" >tabs-2</a> </li>
</ul>
<div id="tabs-1"></div>
<div id="tabs-2"></div>
</div>
-->
更快的方法是創建一個只包含在一個父級中的html字符串,然後附加它 - 每個元素的'$('li')。appendTo()'會使腳本非常慢 – mikakun