【发布时间】:2012-12-16 02:44:06
【问题描述】:
我正在使用hashchange plugin。我可以让我的链接将 hashchange 添加到 URL,但我无法让浏览器识别链接中的哈希。
浏览器只是加载
localhost:3000/pages#?type=1 为localhost:3000/pages
忽略整个哈希部分。
JS如下……
$(function(){
$(window).hashchange( function(){
var hash = location.hash;
$('.links a').each(function(){
var that = $(this);
that[ that.attr( 'href' ) === hash ? 'addClass' : 'removeClass' ]( 'selected' );
});
})
$(window).hashchange();
});
显然我在这里遗漏了一些东西,尽管这段代码基本上是插件文档演示中提供的内容。
【问题讨论】:
-
我不明白?为什么你需要一个插件,因为它在新版本的 jQuery 中是开箱即用的,为什么当 hashchange 没有重新加载页面时,你需要检查所有链接与 hash 来分配选定的类,以及您可以直接分配课程!
-
使用此代码的链接使用 .load 函数将不同的内容重新加载到页面上的 div 中。我需要人们能够使用后退和前进浏览器按钮,从而在 div 内容更改时循环浏览它。以及使用户能够将 URL 复制并粘贴给人员,从而在 div 中加载正确的内容。
-
这实际上并不是添加所选类,而是让浏览器将哈希链接识别为 url 参数。
标签: javascript jquery ruby-on-rails ruby-on-rails-3