====== Wechsel des Browserfensters aufzeichnen ======

Sie möchten überprüfen, ob der Teilnehmer den Fragebogen verlässt -- etwa um in einem anderen Browser-Tab die Antwort auf eine Wissensfrage zu suchen? Die folgende Lösung zeichnet auf, wie oft die aktuelle Fragebogenseite verlassen wurde.

**Wichtig:** Mit dieser Funktion wird jedes Verlassen des Browserfensters aufgezeichnet -- also nicht nur Wechsel in ein anderes Browserfenster, sondern auch zu einem Chatprogramm (wie z.B. Skype), zum E-Mail-Client, etc.

**Wichtig:** Diese Funktion verwendet [[:de:glossary#javascript|JavaScript]]. Wenn in der Variable nichts gespeichert wurde, dann hatte der Teilnehmer JavaScript im Browser deaktiviert.

**Hinweis:** Diese Messung erfolgt im Internetbrowser des Teilnehmers. Mit dem nötigen technischen Wissen kann der Teilnehmer den übermittelten Wert beliebig manipulieren.

**Tipp:** Auch die Verweildauer auf der jeweiligen Fragebogen-Seite kann eine hilfreiche Information sein, ob der Teilnehmer neben dem Fragebogen noch etwas anderes gemacht hat.

===== Umsetzung =====

    - Sie benötigen zunächst eine interne Variable, in welche die Messung gespeichert wird. Legen Sie dafür eine Frage vom Typ //interne Variablen// an und in dieser Frage eine Variable (Item). Wenn Sie als Text für das Item "Fensterwechsel" eintragen, bekommt die Variable im Datensatz gleich eine aussagekräftige Beschriftung.
    - Platzieren Sie die Frage mit der internen Variable auf der entsprechenden Seite im Fragebogen (**Fragebogen zusammenstellen**). Dadurch wird auf der Seite ein verstecktes Eingabefeld eingebunden, in welchem das Ergebnis der Messung gespeichert wird (s. auch [[:de:create:inputs-custom|Eigene Formularelemente verwenden]]).
    - Legen Sie einen Textbaustein mit dem unten stehenden Inhalt an ([[de:create:texts|Texte im Fragebogen]]) und ziehen Sie diesen Textbaustein unter die internen Variable in die Fragebogen-Seite. Alternativ können Sie ein Element //HTML-Code// in die Seite ziehen (unter die Frage) und den Code dort einfügen.
    - Änderung Sie im Code am Ende die Zeile ''%%blurCount("IV01_01")%%'' -- und zwar tragen Sie statt ''IV01_01'' die Kennung Ihrer internen Variable ein.

<code html>
<script type="text/javascript">
<!--

function blurCount(inputID) {
  var input = document.getElementById(inputID);
  if (!input) {
    alert("Fehler: Interne Variable " + inputID + " ist auf der Seite nicht verfügbar!");
    return;
  }

  // Initialisierung (Wert: 0)
  if (isNaN(parseInt(input.value))) {
    input.value = 0;
  }

  // Funktion, die beim Verlassen des Fenster aufgerufen wird
  function countBlur(evt) {
    var val = parseInt(input.value);
    input.value = val + 1;
  }

  // Zählung für jedes Verlassen des Fensters aktivieren
  SoSciTools.attachEvent(window, "blur", countBlur);
}

// Zähler aktivieren
blurCount("IV01_01");

// -->
</script>
</code>

**Tipp:** Wenn Sie den Fragetyp der internen Variable vorübergehend in //offene Texteingabe// ändern, können Sie die Zählung live beobachten.

**Hinweis:** Die Messung ist nur für eine einzelne Seite im Fragebogen gültig -- für die Seite, auf welcher die interne Variable und der Code stehen. Wenn Sie mehrere Seiten beobachten möchten, legen Sie zusätzliche interne Variablen an und binden Sie diese sowie den Code auf allen entsprechenden Seiten ein.