הקדמה
Gmail מאפשר לנו לדפדף בין האזורים במערכת שלהם ללא ריענון באתר. אם נתבונן בקישור נראה כי גוגל משתמשת ב anchor:

ספריית Sammy Js עוקבת אחרי הקישור שלנו ובהתאם להגדרות שנגדיר היא מבצעת את הפעולה.
נגדיר את ההגדרות הבסיסיות לאפליקציה:
<script src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.6.1.min.js"></script>
<script src="https://github.com/quirkey/sammy/raw/master/lib/min/sammy-latest.min.js"></script>
<script>
jQuery(function ($) {
var app = $.sammy(function () {
this.get('#/', function (context) {
console.log("start page");
})
}).run('#/')
});
</script>
אם נריץ את האפליקציה נקבל את:

כפי שאתם יכולים לראות ברגע שהעמוד שלנו עלה, התווסף לנו “#/” לקישור.
הספרייה מראה לנו גם מה ה route שהופעל (ניתן לראות זאת ב fire bug).
ניקח את זה כמה שלבים קדימה
נכין עמוד HTML:
<ul>
<li><a href="#/">home</a></li>
<li><a href="#/About">about</a></li>
<li><a href="#/Article/1">Artile 1</a></li>
</ul>
<br /><br />
<div id="home" class="page">home</div>
<div id="about" class="page">about</div>
<div id="article" class="page">article <span id="num"></span></div>
לאחר שהכנו את ה HTML שלנו בואו נגדיר את הניתוב באפליקציה:
var app = $.sammy(function () {
this.get('#/', function (context) {
$("div").hide();
$("#home").show();
});
this.get('#/About', function (context) {
$("div").hide();
$("#about").show();
});
}).run('#/')
נריץ ונראה שהאפליקציה מציגה את ה DIV הרצוי (כמובן שזאת דוגמא מאוד בסיסית)
קישור 3 מכיל נתיב למאמר מספר 1 (נגיד ויש לי כמה מאמרים שונים שנטענים ב ajax).
נגדיר את הניתוב למאמר (ניתוב דינאמי):
this.get('#/Article/:Id', function () {
$("div").hide();
$("#article").show();
$("#num").text(this.params["Id"])
});
תשימו לב כי לאחר Article אני מעביר פרמטר שנקרא Id ובעזרת
אני שולף את הנתון המועבר (1 במקרה שלנו) ומכניס אותו לspan בשם num.
אתם יכולים לראות את האפליקציה המלאה כאן:
http://blogs.microsoft.co.il/blogs/arnold/Demos/sammyjs/sammyjs.html
במאמרים הבאים אציג לכם שימוש יותר מתקדם בספריה