正在研究使用Zurb Foundation 4构建的Web应用程序,我遇到了一个似乎没有其他人似乎遇到的麻烦。我正在使用标准的顶栏实现,它可以完美运行,就像这样...
<ul class="left">
<li><a href="/pageone" class="ajax_go">Page One</a></li>
<li class="divider"></li>
<li class="has-dropdown"><a href="#">More...</a>
<ul class="dropdown">
<li><a class="ajax_go" href="/pagetwo">Page Two</a></li>
</ul>
</li>
</ul>
我创建了一个ajax_go处理程序,使用此函数通过ajax加载我的内容...
$(document).on("click", ".ajax_go", function(e){
e.preventDefault();
var page_name = $(this).attr('href');
$.ajax({
url: page_name + '?ajax=1',
success: function(result){
$('#content').html(result);
$(document).foundation('section','reflow');
}
});
if(page_name!=window.location){
window.history.pushState({path:page_name},'',page_name);
}
return false;
});
现在我对顶级链接没有任何问题,但我的功能在下拉列表项上失败。单击“第一页”按预期工作,但单击“第二页”将回退到加载新页面的默认操作。我无法弄清楚要从foundation.topbar.js中删除什么,但我认为有些javascript正在影响下拉链接。
如果我以移动宽度加载页面,它也会失败。