2012-04-23 12:48:33 +04:00
|
|
|
|
function buildTable()
|
|
|
|
|
{
|
|
|
|
|
var seed = 0;
|
|
|
|
|
|
|
|
|
|
var neutrals = ['"', ")", "("];
|
2012-04-23 14:49:26 +04:00
|
|
|
|
var strongRTLs = ['א', 'ב', 'ג', 'ד', 'ה', 'ו', 'ז'];
|
2012-04-23 12:48:33 +04:00
|
|
|
|
var strongLTRs = ['a', 'b', 'c', 'd', 'e', 'f', 'g'];
|
|
|
|
|
var neutral = function() { return neutrals[seed++ % neutrals.length]; }
|
|
|
|
|
var strongRTL = function() { return strongRTLs[seed++ % strongRTLs.length]; }
|
|
|
|
|
var strongLTR = function() { return strongLTRs[seed++ % strongLTRs.length]; }
|
|
|
|
|
var charClassExamples = [neutral, strongRTL, strongLTR];
|
|
|
|
|
var possibleDirs = ['ltr', 'rtl'];
|
|
|
|
|
|
|
|
|
|
var elem=document.getElementById("elem");
|
|
|
|
|
for (outerDirIndex in possibleDirs) {
|
|
|
|
|
var outerDir = possibleDirs[outerDirIndex];
|
|
|
|
|
for (beforeSpanIndex in charClassExamples) {
|
|
|
|
|
var beforeSpan = charClassExamples[beforeSpanIndex];
|
|
|
|
|
for (spanDirIndex in possibleDirs) {
|
|
|
|
|
var spanDir = possibleDirs[spanDirIndex];
|
|
|
|
|
for (inSpanIndex in charClassExamples) {
|
|
|
|
|
var inSpan = charClassExamples[inSpanIndex];
|
|
|
|
|
for (afterSpanIndex in charClassExamples) {
|
|
|
|
|
var afterSpan = charClassExamples[afterSpanIndex];
|
|
|
|
|
function caseWithStyle() {
|
|
|
|
|
seed = 0;
|
|
|
|
|
var outerDiv = document.createElement("div");
|
|
|
|
|
outerDiv.dir = outerDir;
|
|
|
|
|
outerDiv.appendChild(document.createTextNode(beforeSpan()));
|
|
|
|
|
var span = document.createElement("span");
|
|
|
|
|
span.dir = spanDir;
|
|
|
|
|
span.setAttribute("class", "enclosed")
|
|
|
|
|
span.appendChild(document.createTextNode(inSpan()));
|
|
|
|
|
outerDiv.appendChild(span);
|
|
|
|
|
outerDiv.appendChild(document.createTextNode(afterSpan()));
|
|
|
|
|
return outerDiv;
|
|
|
|
|
}
|
|
|
|
|
elem.appendChild(caseWithStyle());
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|