uu.ready("href:url/dispatcher", callback, ...) impl
条件成立でコールバックする関数を登録しておく機能 uu.ready() の条件に、ページのURLが一致する場合にコールバックする機能を追加しました。
このようにして利用します。同じものを http://jsdo.it/uupaa/2011-01-19 にあげてあります。
// jsdo.it のコードは <iframe> 内で動作するため、 // DOMContentLoaded の発火タイミングが <html> 内に設置した場合と // 異なります。ご注意ください。 <!DOCTYPE html><html lang="ja"><head><meta charset="utf-8" /> <script src="src/uupaa.js"></script> <script> uu.ready(function() { alert("DOMContentLoaded - this location.href = " + location.href); }); uu.ready("href:/http://jsdo.it/nguser", function(uu, doc) { // この関数は指定されたURLにマッチしないためコールバックされません alert("NG - http://jsdo.it/nguser..."); }, /* 条件を省略 */ function() { // この関数は指定されたURLにマッチしないためコールバックされません // uu.ready(callback, callback, ...)のように関数を連続して記述すると、 // 直前の条件の評価に基づいて関数を連続でコールバックします alert("NG - http://jsdo.it/nguser..."); }, "href:uupaa/2011-01-19", function(uu, doc) { // 最初にコールバックされます。DOMContentLoaded前に呼ばれる可能性があります alert("OK1 - uupaa/2011-01-19..."); }, "href:uupaa/2011-01-19", function(uu, doc) { // 2番目にコールバックされます。DOMContentLoaded前に呼ばれる可能性があります alert("OK2 - uupaa/2011-01-19..."); }, /* 条件を省略 */ function() { // 条件が省略されているため、直前の条件の評価に基づき、 // この関数は3番目にコールバックされます alert("OK3 - uupaa/2011-01-19..."); }, "dom", function(uu, doc) { // DOMContentLoaded のタイミングでコールバックされます。 alert("DOMReady(DOMContentLoaded)"); }, "window", function(uu, doc) { // window.onload のタイミングでコールバックされます。 alert("WindowReady(window.onload)"); }, "storage", function(uu, storage) { // WebStorage(または互換機能)が利用可能になったタイミングでコールバックされます。 alert("StorageReady"); }, "audio", function(uu, doc) { // <audio>(または互換機能)が利用可能になったタイミングでコールバックされます。 alert("AudioReady"); }, "canvas", function(uu) { // <canvas>(または互換機能)が利用可能になったタイミングでコールバックされます。 alert("CanvasReady"); }, "svg", function(uu) { // <svg>(または互換機能)が利用可能になったタイミングでコールバックされます。 alert("SVGReady"); }); </script></head><body></body></html>