Seite 3 von 3 ErsteErste 123
Ergebnis 31 bis 34 von 34
Like Tree12Likes

Thema: noti.js

  1. #31
    j-l-n Guest

    AW: noti.js

    Zitat Zitat von kkapsner Beitrag anzeigen
    Wie komplex/komfortabel/kontrollierbar willst du denn das Eventsystem haben.
    Ich weiß es ehrlich gesagt nicht - hab mich vor deiner Idee noch nicht wirklich mit einem echten Eventsystem beschäftigt. Müsste mir da wahrscheinlich erst einmal Grundlagen aneignen...

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

    AW: noti.js

    Ich meine hald, ob man einfach nur beim .create() ein paar Attribute (wie oncreate, onclose, etc.) mit übergeben kann und die dort übergebenen Callbacks dann ausgeführt werden, oder ob man Listener auch noch später hinzufügen oder entfernen können soll.

  3. #33
    j-l-n Guest

    AW: noti.js

    Zitat Zitat von kkapsner Beitrag anzeigen
    oder ob man Listener auch noch später hinzufügen oder entfernen können soll.
    Hm, gute Frage. Wäre eigentlich gar nicht mal so unpraktisch. Kannst du mir da mal ein simples Beispiel bauen, wie das nachträgliche Hinzufügen/Entfernen bzw. Triggern funktioniert?

  4. #34
    Avatar von kkapsner
    kkapsner ist offline Super Moderator
    registriert
    28-03-2008
    Beiträge
    17.702

    AW: noti.js

    Ist eigentlich so ähnlich die die normalen Browserevents:
    HTML-Code:
    <!DOCTYPE html>
    
    <html>
    <head>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
    <title>Fenstertitel</title>
    <script type="text/javascript" src="//kkjs.kkapsner.de/modules/kkjs.load.js?modules=NodeRepresentator"></script>
    </head>
    <body>
    <script type="text/javascript">
    var Button = kkjs.NodeRepresentator.extend(function(name){
    	this.name = name;
    }).implement({
    	_createNode: function(){
    		var This = this;
    		return kkjs.node.create({
    			tag: "button",
    			childNodes: [this.name],
    			onclick: function(){
    				This.emit("click");
    			}
    		});
    	},
    	_updateNode: function(node){
    		node.firstChild.nodeValue = this.name;
    	}
    });
    
    function listener(){
    	alert("test");
    }
    var b1 = new Button("test");
    var b2 = new Button("append listener");
    b2.on("click", function(){
    	b1.removeListener("click", listener);
    	b1.on("click", listener);
    });
    var b3 = new Button("remove listener");
    b3.on("click", function(){
    	b1.removeListener("click", listener);
    });
    document.body.appendChild(b1.createNode());
    document.body.appendChild(b2.createNode());
    document.body.appendChild(b3.createNode());
    </script>
    </body>
    </html>

Seite 3 von 3 ErsteErste 123

Lesezeichen

Berechtigungen

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