MediaWiki:Skin/Projekt:Adventure2/lib.js: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
J* (Diskussion | Beiträge) |
J* (Diskussion | Beiträge) (enter+leave events) |
||
Zeile 38: | Zeile 38: | ||
a2.loadPage = function loadPage(n){ | a2.loadPage = function loadPage(n){ | ||
+ | async.fireEvent("leave."+a2.cpage); | ||
response = $.ajax({ | response = $.ajax({ | ||
url: "/index.php/Kamel:J*/Test2/"+n+"?action=render", | url: "/index.php/Kamel:J*/Test2/"+n+"?action=render", | ||
Zeile 48: | Zeile 49: | ||
return false; | return false; | ||
}); | }); | ||
+ | a2.cpage = n; | ||
+ | async.fireEvent("enter."+a2.cpage); | ||
}; | }; |
Version vom 6. Juli 2012, 20:24 Uhr
// A2lib
a2 = {};
a2.events = {};
a2.clearScope = function clearScope(sc) {
delete a2.events[sc];
};
a2.registerEventHandler = function registerEventHandler(e) {
if (!a2.events[e.scope])
a2.events[e.scope]={};
if (!a2.events[e.scope][e.trigger])
a2.events[e.scope][e.trigger] = [];
a2.events[e.scope][e.trigger].push(function(){
a2.log("run", e.name);
if (e.condition())
e.action();
});
};
if (window.console && window.console.log)
a2.log = window.console.log;
else
a2.log = function () {return;};
a2.fireEvent = function fireEvent (event) {
a2.log("Fire", event);
var e = a2.events;
for(i in e)
if (e[i])
for(j=0; j<e[i][event].length; j++)
e[i][event][j]();
};
a2.loadPage = function loadPage(n){
async.fireEvent("leave."+a2.cpage);
response = $.ajax({
url: "/index.php/Kamel:J*/Test2/"+n+"?action=render",
async: false
});
$("#a2image").html(response.responseText);
console.log($("#a2image a"));
$("#a2image area").click(function (ev) {
a2.fireEvent("click."+ev.target.hash.substr(1));
return false;
});
a2.cpage = n;
async.fireEvent("enter."+a2.cpage);
};