现在我有这个清单:
<ul id="list">
<li id="active"><a href="#home" id="home-link"><img src="main home page/purhome.png"></a></li>
<li id="active"><a href="#info" id="info-link"><img src="main home page/purinfo.png"></a></li>
<li id="active"><a href="#gyms" id="gyms-link"><img src="main home page/purgyms.png"></a></li>
<li id="active"><a href="#contact" id="contact-link"><img src="main home page/purcontact.png"></a></li>
</ul>
而这个jQuery:
$(document).ready(function(){
$("#home-link").click(function(){
$("#main_info2").hide();
$("#main_info").show();
});
$("#info-link").click(function(){
$("#main_info").hide();
$("#main_info2").show();
});
$("#gyms-link").click(function(){
$("#main_info").hide();
$("#main_info2").show();
});
$("#contact-link").click(function(){
$("#main_info").hide();
$("#main_info2").show();
});
});
当我单击主页链接时,URL 显示 indexp.php#home,这就是我想要显示的内容。所有链接都会发生这种情况。但是,如果我在单击信息链接后刷新页面,则会显示 main_info div,但浏览器仍然显示 index.php#info。我想以某种方式读取哈希以显示正确的 div,具体取决于 url 的内容。
因此,例如,如果我单击信息链接,则 url 显示 index.php#info。当我刷新它说同样的事情,但 main_info div 显示 main_info2 div 应该显示的时间。
function getHash() {
var hash = window.location.hash;
return hash.substring(1); // remove #
}
所以我有那个代码。我会做这样的事情吗?
if hash = 'info' // if url says index.php#info
show main_info2
hide main_info
if hash = nothing // So if url says index.php
show main_info
hide main_info2
有任何想法吗?
编辑**
我正在尝试做这样的事情来使它工作:
var currentValue = window.location.hash.substr(1)
$(document).ready(function() {
$("home-link").click(function(){
if(currentValue == "home") {
$("#main_info2").hide();
$("#main_info").show();
}
});
$("info-link").click(function(){
if(currentValue == "info") {
$("#main_info").hide();
$("#main_info2").show();
}
});
});
虽然这不起作用,但有人可以检查代码吗?