我没有足够的javascript和jQuery开发经验,所以我想知道是否有人可以告诉我如何创建一个使用sammy.js和HTML模板的函数。
这是我现在的工作代码:
<script>
;(function($) {
var app = $.sammy(function() {
this.get('#/', function() { $('#content').text(''); });
this.get('#/home', function() { $('#content').load('main.html'); });
});
$(function() { app.run() });
})(jQuery);
</script>
当我转到或点击main.html
时,此代码会显示...html#/home
的内容,但我正在寻找一个javascript函数,它只能找出网址的终点({之后的单词} {1}})并获取同名的html页面。
在pseudo-code中:
..#/
感谢您的帮助
答案 0 :(得分:8)
你只需要一个route with a parameter:
this.get('#/:page', function() {
$('#content').load(this.params['page'] + '.html');
});
确保在您的其他路线之后,或者几乎所有路线都会被呼叫(例如您已经处理过的#/home
。)
当然,您可以在路线中添加其他参数:
this.get('#/:where/:is/:pancakes/:house', function() {
// Do things with this.params['where'], this.params['is'],
// this.params['pancakes'], and this.params['house'].
});
您只需要确保订单正确或路线可以互相争斗。路线的匹配顺序与它们的添加顺序相同,因此更常见的全部路线通常位于底部。