so habe ich rund 20 Tabs (Seiten) mit viel Unter Tabs, die alle angezeigt, um den ähnlichen Code unten:Reduzierung jquery UI Tabs Code
Ich denke, wie kann ich diesen Code schrumpfen JS in Master setzen Datei und verwenden/wiederverwenden für jedes Div ??, wie diese Tabs geladen werden.
Der Roadblock, den ich treffe, ist, dass ich auf all diese Divs aufpassen muss, also muss ich diesen Code 20+ mal schreiben ???
//dynamic tab add/remove
var tabTemplate = "<li><a href='#{href}'>#{label}</a> <span class='ui-icon ui-icon-close' style=\"float:left;\" role='presentation'>Remove Tab</span></li>",
tabCounter = 1;
//jquery-ui
var divOneTabs = $("#divOneTabs").tabs({ //same as: $(".selector").tabs("option", "active", 1);
active: 0
});
$('.tabs').css('height','auto'); //extend height of tab content... not working as of now...
function divOneAddTab(t,c) {
var label = t,
id = t + "-" + tabCounter,
li = $(tabTemplate.replace(/#\{href\}/g, "#" + id).replace(/#\{label\}/g, label)),
tabContentHtml = c;
divOneTabs.find(".divOneTabs").append(li);
divOneTabs.append("<div id='" + id + "'><p>" + tabContentHtml + "</p></div>");
//below fixes the tab height issue in jquery-ui
//divOneTabs.append('<div id="' + id + '"' + ' class="tabdiv" ' + '><p>' + tabContentHtml + '</p></div>');
divOneTabs.tabs("refresh");
tabCounter++;
}
// close icon: removing the tab on click
divOneTabs.delegate("span.ui-icon-close", "click", function() {
var panelId = $(this).closest("li").remove().attr("aria-controls");
$("#" + panelId).remove();
divOneTabs.tabs("refresh");
});
divOneTabs.bind("keyup", function(event) {
if (event.altKey && event.keyCode === $.ui.keyCode.BACKSPACE) {
var panelId = divOneTabs.find(".ui-tabs-active").remove().attr("aria-controls");
$("#" + panelId).remove();
divOneTabs.tabs("refresh");
}
});
//end jquer-ui settings
... einige Funktion auf jeder Seite wird ihre einzigartige divOneAddTab Routine aufrufen und die dann li seiner einzigartigen Klasse (gleichnamigen) hinzuzufügen.
so, dieser Code repeates für divOne, divTwo .....
html:
<div id="divOneTabs">
<ul class="divOneTabs">
<li><a href="#divOneTabsDef">Default</a><span class="ui-icon ui-icon-close" style="float: left;" role="presentation">Remove Tab</span></li>
</ul>
<div id="divOneTabsDef">
<pre>Sample Output.</pre>
</div>
danke fo rthe Detail. Ich muss es noch versuchen, aber ich bin sicher, es wird funktionieren. – rajeev