我真的会在这件事上提供任何帮助。这是我到目前为止的代码:
$('.Ajax_links').click(function() {
window.location.hash = $(this).attr("href");
var href = $(this).attr('href');
$('#contaniner_div').load(href);
$('data-target').click(function() {
var data-target = $(this).attr('data-target');
$('#contaniner_Div_Nav').load(this.data-target);
}
return false;
});
如果单击设置为(class =“Ajax_links”)类的链接,我希望上面的代码搞砸上面这两个div中的内容:
<div id="contaniner_Div"></div>
<div id="contaniner_Div_Nav"></div>
这是链接的外观:
<a href="files/content.html" class="Ajax_links" data-target="files/navigation.html">
当我点击链接时,我使用rel而不是数据目标方法的第一个方法将内容加载到这两个div中,但该内容的rel部分未包含在哈希中。使我无法为链接的rel部分添加书签,或者如果我想使用浏览器按钮返回/转发。 (我正在使用ben Alman插件)。所以现在我正在寻找一种不同的方法,但我的代码不起作用。有人可以帮助我吗?
答案 0 :(得分:1)
我认为你需要一个后退按钮和历史记录支持的插件。这个通常被认为是非常好的:
答案 1 :(得分:1)
正如David Thomas所指出的那样,您似乎承认,代码中的$(this)
是文档对象周围的jQuery包装器。该对象没有rel
属性,因此$(this).attr("rel")
是值undefined
。在JavaScript undefined != ""
中,表达式的计算结果为true,然后将window.location.hash
设置为另一个未定义的值:$(this).attr("href")
。这就是您看到domain/#undefined
等网址的原因。
我还应该指出你在HTML锚标记上误用了the rel
attribute。
此属性描述从当前文档到href属性指定的锚点的关系。此属性的值是以空格分隔的链接类型列表。
这是the list of valid link types。使用data-
attributes存储有关HTML元素的任意元数据,您将获得更好的服务。