Anzeigen:
Modul: HTMLUI

Klasse, die es ermöglicht den Client innerhalb des HTML User Interface zu steuern und Daten an den Server zu senden.

Übersicht

Methoden

Eigenschaften

Methoden

addEventListener

(
  • type
  • callback
)
static

Registriert sich für ein bestimmtes Event, das vom Server mittels sendEvent oder vom Client via dispatchEvent verschickt wurde.

Parameter:

  • type String

    Name des Events. Gibt man als Name das Zeichen Sternchen '*' an, so registriert man sich für alle Events.

  • callback Function

Beispiel:

// Server
user.sendEvent('gameEnded', { x: 1, y: 2 });


// Client
Client.addEventListener('gameEnded', function(event) {
        var type = event.type;    // 'gameEnded'
        var data = event.data;  // { x: 1, y: 2 }
});

close

() static

Schließt das HTML User Interface.

Beispiel:

// mit purem JavaScript //
document.getElementById('buttonClose').onclick = function() 
{
    Client.close();
}

// oder mit jQuery //
$('#buttonClose').click(function ()
{
    Client.close();
});

dispatchEvent

(
  • event
)
static

Sendet ein bestimmtes Event, so dass alle mit addEventListener registrierten Listener aufgerufen werden.

Parameter:

Beispiel:

var event = new Client.Event('gameEnded', { x: 1, y: 2 });
Client.dispatchEvent(event);

executeSlashCommand

(
  • command
)
static

Sagt dem Chatserver, dass dieser Befehl für den Nutzer, der das HTML User Interface sieht, ausgeführt werden soll. Ist der Befehl auf einer Whitelist vom Server, so wird er sofort ausgeführt. Im anderen Falle sieht der Nutzer einen Link zum Bestätigen, mit dem er die Aktion starten kann.

Derzeit sind diese Befehle auf der Whitelist: w, info, wc, top, h, dice, d, diceo, w2, serverpp, knuddelaccount, /tf-insert, /tf-inserts, /tf-insertb, /tf-insertsb, /tf-override, /tf-overrides, /tf-overrideb, /tf-overridesb, /autotype

Parameter:

  • command String

    Befehl, der ausgeführt werden soll

Beispiel:

Client.executeSlashCommand('/dice 10w2');

freeSound

(
  • fileName
)
static

Gibt einen Sound wieder frei, der in nächster Zeit vom Client nicht mehr gebraucht wird. (Android only) Der angegebene Dateiname kann hierbei entweder absolut oder relativ zur angezeigten HTML-Datei sein.

Parameter:

Beispiel:

Client.freeSound('testSound.wav');

getCacheInvalidationId

() String static

Liefert die Id, die beim Laden von Skripten und Stylesheets an die URL angehängt wird, um sicherzustellen, dass eine neue Version der Datei vom Server geholt wird, statt die Datei aus dem Cache zu laden.

Diese Id kann beim Einbinden eigener Ressourcen zum selben Zweck genutzt werden.

Rückgabewert:

Beispiel:

var cacheInvalidationId = Client.getCacheInvalidationId();

getClientType

() ClientType static

Liefert den aktuellen ClientType des Nutzers, der gerade dieses HTML User Interface angezeigt bekommt.

Rückgabewert:

Beispiel:

var clientType = Client.getClientType();

getHostFrame

() Client.HostFrame static

Liefert den HostFrame des aktuellen Inhalts.

Rückgabewert:

Beispiel:

var hostFrame = Client.getHostFrame();

getNick

() String static

Liefert den Nicknamen des Users, der gerade dieses HTML User Interface angezeigt bekommt.

Rückgabewert:

String:

Nickname des Betrachters

Beispiel:

var nick = Client.getNick();

includeCSS

(
  • files
)
static

Bindet eine CSS-Datei ein und sorgt dafür, dass immer die aktuellste Version vom Server geladen wird.

Parameter:

Beispiel:

Client.includeCSS('test.css', 'test2.css');

includeJS

(
  • files
)
static

Bindet eine Javascript-Datei ein und sorgt dafür, dass immer die aktuellste Version vom Server geladen wird.

Parameter:

Beispiel:

Client.includeJS('test.js', 'test2.js');

playSound

(
  • fileName
)
static

Spielt einen Sound ab. Der angegebene Dateiname kann hierbei entweder absolut oder relativ zur angezeigten HTML-Datei sein. Bisher können nur Dateien mit Wave-Format zuverlässig abgespielt werden.

Parameter:

Beispiel:

Client.playSound('testSound.wav');

prefetchSound

(
  • fileName
)
static

Lädt einen Sound herunter, damit die Datei später ohne Wartezeit abgespielt werden kann. (Android only) Der angegebene Dateiname kann hierbei entweder absolut oder relativ zur angezeigten HTML-Datei sein.

Parameter:

Beispiel:

Client.prefetchSound('testSound.wav');

removeEventListener

(
  • type
)
static

Entfernt alle Event-Listener für einen bestimmten Event-Typ.

Parameter:

Beispiel:

Client.removeEventListener('gameEnded');

sendEvent

(
  • type
  • data
)
static

Sendet ein Event zum Server, das mit dem AppHook onEventReceived in der App abgefangen werden kann.

Parameter:

Beispiel:

var gamePoints = 1;

var data = {
    points: gamePoints
};

Client.sendEvent('gameEnded', data);

Eigenschaften

pageData

Json static

Beinhaltet die JSON-Daten, die beim Erstellen des HTMLFile übergeben wurden.

Beispiel:

// Server code //
var pageData = {
    userAge: user.getAge();
}

var htmlFile = new HTMLFile('test.html', pageData);

var appContent = AppContent.overlayContent(htmlFile);

user.sendAppContent(appContent);

// Client code //
var userAge = Client.pageData['userAge'];