Ergebnis 1 bis 5 von 5
  1. #1
    dasmein ist offline Jungspund
    registriert
    10-04-2017
    Beiträge
    13

    intellij -> Visual Studio 2017 (UWP) - Probleme mit body.onload

    Hallo,
    Ich wollte mein kleines Projekt, bestehend aus HTML,JavaScript und CSS, nach Visual Studio übertragen um dort eine UWP-App zu erstellen. Das Problem hierbei ist, dass das <body onload="funktion"> hier nicht mehr funktioniert, es tut sich einfach nichts. Was muss ich stattdessen machen, damit ich beim laden der index.html eine entsprechende Funktion aufrufen kann. Altert funktioniert hier auch nicht wie gewöhnlich, aber da bin ich schon auf eine Lösung gekommen:

    Code:
     var messageDialog = new Windows.UI.Popups.MessageDialog("Hello, world!", "Alert");
         messageDialog.showAsync()
    Ich bedanke mich schon mal und schönes Wochenende!


    Edit\ Gut, dass mit dem <body onload> habe ich so lösen können:
    Code:
    window.onload = function () {
        initial();
     }
    Ich habe aber ein anderes Problem! Zwar habe ich durch Windows.UI.Popups eine alternative zu alert gefunden, jedoch habe ich gemerkt, dass dies leider nicht blockiert. Es wird also der nachstehende Code beim Popup dennoch ausgeführt. Unter
    https://stackoverflow.com/questions/...-in-metro-apps
    habe ich zwar einen Lösungsvorschlag gefunden (erste Antwort), jedoch funktioniert dies bei mir nicht, oder ich mache was falsch!
    Code:
    funktion test (){
    (function () {
        var alertsToShow = [];
        var dialogVisible = false;
    
        function showPendingAlerts() {
            if (dialogVisible || !alertsToShow.length) {
                return;
            }
    
            dialogVisible = true;
            (new Windows.UI.Popups.MessageDialog(alertsToShow.shift())).showAsync().done(function () {
                dialogVisible = false;
                showPendingAlerts();
            })
        }
        window.alert = function (message) {
            if (window.console && window.console.log) {
                window.console.log(message);
            }
    
            alertsToShow.push("test");
            showPendingAlerts();
        }
    })();
    Einzige was ich geändert habe ->
    Code:
    alertsToShow.push("test");
    Es tut sich nichts und bekomme keine Fehlermeldung.
    Geändert von dasmein (16-12-2017 um 04:51 Uhr)

  2. #2
    Avatar von kkapsner
    kkapsner ist offline Super Moderator
    registriert
    28-03-2008
    Beiträge
    17.579

    AW: intellij -> Visual Studio 2017 (UWP) - Probleme mit body.onload

    Was willst du denn mit dem alert blockieren. Der gezeigte Code funktioniert ja nur, wenn man einfach mehrere alerts hintereinander anzeigen will. Wenn du irgendwas anderes ausführen willst, musst du das in der .done-Funktion machen.

  3. #3
    dasmein ist offline Jungspund
    registriert
    10-04-2017
    Beiträge
    13

    AW: intellij -> Visual Studio 2017 (UWP) - Probleme mit body.onload

    Hallo, ich habe mal kurz ein kleines Beispiel erstellt in der mein Problem ganz gut ersichtlich ist. Mit der .done-Funktion komme ich hier leider nicht weit. Es sind im prinzip 2 Funktionen vorhanden. Eine Funktion1 ruft mitten im Codeteil die Funktion2 auf und der restliche Codeteil von Funktion1 soll erst dann weiter ausgeführt werden, wenn Funktion1 komplett durchlaufen ist bzw. wie einem Fall die Messagebox (die ganz am Ende steht), geschlossen wurde:

    Code:
    function alert(text) {
        var messageDialog = new Windows.UI.Popups.MessageDialog(text);
        messageDialog.showAsync();
      }
    func1(){
        x = 1;
        document.getElementById("text").innerHTML = x;
        func2();
        x = 2;
        document.getElementById("text").innerHTML = x;
    }
    
    func2() {
        //Irgendein Code
        msgalert("ICH WARTE BIS ICH GESCHLOSSEN WURDE");
    }
    Hier in dem Fall darf erst die 2 ins Document geschrieben werden nachdem die Messagebox geschlossen wurde.

  4. #4
    tsseh ist offline Foren-Gott
    registriert
    19-05-2008
    Beiträge
    5.610

    AW: intellij -> Visual Studio 2017 (UWP) - Probleme mit body.onload


  5. #5
    Avatar von kkapsner
    kkapsner ist offline Super Moderator
    registriert
    28-03-2008
    Beiträge
    17.579

    AW: intellij -> Visual Studio 2017 (UWP) - Probleme mit body.onload

    Du musst die Funktion 1 dann aufspalten. Den Teil nach dem Aufruf von 2 musst du in eine separate Funktion packen (kann ja auch eine anonyme Funktion sein).

Ähnliche Themen

  1. onload="..." im body und window.onload=hoverIE;
    Von zsoerenm im Forum JavaScript
    Antworten: 4
    Letzter Beitrag: 15-08-2007, 14:18
  2. HTML body onLoad-probleme
    Von uid im Forum JavaScript
    Antworten: 18
    Letzter Beitrag: 09-08-2007, 10:38
  3. HTML body onLoad-probleme
    Von uid im Forum Serverseitige Programmierung
    Antworten: 2
    Letzter Beitrag: 08-08-2007, 12:42
  4. body onload & function window.onload()
    Von Apoplexy im Forum JavaScript
    Antworten: 10
    Letzter Beitrag: 29-06-2005, 01:12
  5. body onload
    Von dkdenz im Forum JavaScript
    Antworten: 6
    Letzter Beitrag: 23-04-2004, 11:03

Stichworte

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •