|
Letzte
Bearbeitung dieses Dokuments: |
Voraussetzung für das Verständnis dieses Dokuments:Kenntnisse von HTML-Code und Javascript. |
Ungefährer Zeitaufwand für das Durcharbeiten dieses Dokumentes:In diesem Dokument
wird gelistet, welche Javascript-Funktionen für die JavaScout
Web-Präsentation aus HTML-Dokumenten aufgerufen werden und
welche Parameter dabei nötig sind. |
Dieses Dokument beschreibt die Variablen und Javascript-Arrays für die Zuordnung von Dokumenten mit gleichem Inhalt in verschiedenen Sprachen.
Diese Variablen und Arrays werden von der Javascript-Funktion showTranslatedDocument(...) (Beschreibung in Erstellung einer Web-Präsentation – Javascript-Programme > Funktion showTranslatedDocument(...)) verwendet um für ein angezeigtes Dokument mit Haupt-Inhalt das referenzierte Dokument mit gleichem Inhalt in anderer Sprache zu ermitteln.
Vorbedingungen
Vorbemerkung
Aufgabe
von LogoFrameName
und
ContentFrameName
Aufgabe
von LanguageArray
Aufgabe
von ContentDocumentArray
Weitere
Schritte und verwandte Dokumentation
Kenntnisse der Programmierung mit Javascript.
Überblick
über den Aufbau der Web-Präsentation; Empfohlen ist das
Durchlesen der Dokumente mit dem Tutorial;
Das
Inhaltsverzeichnis dazu finden Sie unter Tutorial
für die Gestaltung einer Web-Präsentation wie dieser.
Vorbemerkung
Bevor
Sie mir einen E-Mail senden, dass die Implementierung auch 'moderner'
sein kann -
lesen Sie bitte meine Gründe die
Programmier-Entscheidungen so zu treffen wie sie sind:
Zum
Testen verwende ich einen Uralt-Computer mit Pentium I / 150 MHz und
48 MB RAM.
Als Betriebssystem ist Windows 98SE und als Browser
ist Firefox Version 2.0.0.17 installiert.
Diese 'lahme Ente' ist
deswegen noch in Betrieb weil ich damit teste, ob
Java-Client-Programme und auch Javascript-Funktionen noch akzeptabel
schnell laufen.
Mit XML-Dateien zur Steuerung der Web-Präsentation ist die 'lahme Ente' hoffnungslos überfordert – deswegen verwende ich die Arrays in Javascript-Format.
Und
weil ich schon beim Optimieren war:
Ich weiß, dass ich die
Größe eines Arrays auch im Code abfragen kann. Aber
schneller läuft der Code wenn die Größe eines Arrays
bereits als Wert einer Variable vorhanden ist.
Zum Ansehen einer Datei mit Muster-Code laden Sie bitte die Muster-Präsentation (wie in Tutorial: Gestaltung einer Web-Präsentation – Herunterladen der Muster-Verzeichnisstruktur mit den Javascript-Dateien beschrieben) herunter und Öffnen mit einem Editor die Datei 'TranslationArray_Bereich_A.js' im Verzeichnis '_referenceArrays'.
Für
eine größere Anzahl von zu verwaltenden Dokumenten in
verschiedenen Sprachen ist es sinnvoll, das Anwendungsprogramm
JavaScout
ProjectAssist zu
verwenden.
In JavaScout
ProjectAssist können
die Sprachen und die Referenzen der Dokumente mit Haupt-Inhalt über
eine komfortable Benutzeroberfläche erfasst werden
Aus den
erfassten Informationen können die Dateien mit den hier
beschriebenen Arrays für die einzelnen Themenbereiche generiert
werden.
Aufgabe
von
LogoFrameName
und
ContentFrameName
Zuerst das Muster aus der Datei 'TranslationArray_Bereich_A.js':
var
LogoFrameName = 'Logo';
var ContentFrameName = 'Content';
Diese
beiden Variablen legen bestimmen die Namen der Frames für das
'Logo'-Dokument und für die Dokumente mit dem
Haupt-Inhalt.
Innerhalb des 'Logo'-Dokumentes ist in einem
versteckten Feld der Code der aktuellen Sprache abgelegt.
Der Name
des Frames für die Dokumente mit Haupt-Inhalt ist notwendig, um
zu ermitteln welches Dokument aktuell angezeigt wird und dafür
das referenzierte Dokument mit gleichem Inhalt in anderer Sprache
finden zu können.
Aufgabe
von
LanguageArray
Zuerst das Muster aus der Datei 'TranslationArray_Bereich_A':
var
LanguageArray;
funktion loadLanguageArray(){
LanguageArray =
new Array(2);
LanguageArray[0]
= 'de';
LanguageArray[1] =
'en';
}
var LanguageArray_Members = 2;
In
diesem Array ist festgelegt, in welchen Sprachen Dokumente mit
Haupt-Inhalt vorhanden sind.
Die Reihenfolge der Sprache in diesem
Array bestimmt auch, in welcher Reihenfolge in der 'Dimension 2' des
ContentDocumentArray
die
Dateinamen für die Dokumente in dieser Sprache enthalten sind.
Die
Funktion muss, bevor eine andere Javascript-Funktion das auf das
Array zugreifen will, aufgerufen werden – damit wird das Array
erstellt und mit den Werten gefüllt.
Wenn
Sie den Code manuell erstellen beachten Sie bitte auch,
var
LanguageArray_Members
mit
dem korrekten Wert zu füllen.
Meine Anmerkung dazu finden Sie
im Abschnitt Vorbemerkung
;-).
Aufgabe
von
ContentDocumentArray
Zuerst das Muster aus der Datei 'TranslationArray_Bereich_A.js':
var
ContentDocumentArray;
funktion
loadContentDocumentArray(){
ContentDocumentArray = new
Array(4);
ContentDocumentArray[0]
= new Array(2);
ContentDocumentArray[0][0]
= 'Bereich_A/de/index.html';
ContentDocumentArray[0][1]
= 'Bereich_A/en/index.html';
ContentDocumentArray[1]
= new Array(2);
ContentDocumentArray[1][0]
= 'Bereich_A/de/A_Dokument1_de.html';
ContentDocumentArray[1][1]
= 'Bereich_A/en/A_Dokument1_en.html';
ContentDocumentArray[2]
= new Array(2);
ContentDocumentArray[2][0]
= 'Bereich_A/de/A_Dokument2_de.html';
ContentDocumentArray[2][1]
= 'Bereich_A/en/A_Dokument2_en.html';
ContentDocumentArray[3]
= new Array(2);
ContentDocumentArray[3][0]
= 'Bereich_A/de/A_Dokument3_de.html';
ContentDocumentArray[3][1]
= 'Bereich_A/en/A_Dokument3_en.html';
}
var
ContentDocumentArray_Members = 4;
In
diesem Array ist festgelegt, welche Dateien die Dokumente mit
gleichem Inhalt in verschiedenen Sprachen enthalten.
Dazu
wird die 'erste Dimension' des Arrays angelegt, die die
'verschiedenen Inhalte' der Dokumente enthält:
ContentDocumentArray
= new Array(4
);
Innerhalb
eines Elements der 'ersten Dimension' zu wird eine weitere Dimension
(Dimension 2) angelegt, die für jede verwendete Sprache ein
Element enthält:
ContentDocumentArray[x
]
= new Array(
2
);
Diese
Elemente enthalten dann die Dateinamen der Dokumente mit gleichem
Inhalt in verschiedenen Sprachen:
ContentDocumentArray[0
][
0
]
= 'Bereich_A/de/index.html';
ContentDocumentArray[0
][
1
]
= 'Bereich_A/en/index.html';
Dabei
gelten folgende Regeln:
Die
Reihenfolge der Sprachen in der zweiten Dimension ist durch die
Reihenfolge der Sprachen im Array
LanguageArray
festgelegt.
Die
Verzeichnis-Struktur für die Dokumente beginnt erst unterhalb
des 'Home'-Verzeichnisses.
Das 'Home'-Verzeichnis ist jenes
Verzeichnis, in dem die Datei 'control_index.html' enthalten
ist.
Mehr über den Aufbau der Verzeichnis-Struktur erfahren
Sie unter Technische
Hintergrund-Information für die Web-Präsentation –
Unterverzeichnis -Struktur für die Web-Präsentation
.
Die
Funktion muss, bevor eine andere Javascript-Funktion das auf das
Array zugreifen will, aufgerufen werden – damit wird das Array
erstellt und mit den Werten gefüllt.
Wenn
Sie den Code manuell erstellen beachten Sie bitte auch,
var
ContentDocumentArray_Members
mit
dem korrekten Wert zu füllen.
Meine Anmerkung dazu finden Sie
im Abschnitt Vorbemerkung
;-).
Dokument |
Inhalt |
In diesem sind die Javascript-Dateien und -Funktionen, die auf die hier beschriebenen Arrays zugreifen, gelistet und beschrieben. |