Jquery地址插件-历史记录(后退/前进)跟踪不工作
我已经试着让Jquery地址插件正常工作了大约12个小时了,所以我想是时候发布了。我的问题是前后导航不起作用。IE:点击一个链接,然后点击“后退”按钮,实际上并不返回。但它改变了url。另一件让我相信我做了一些根本错误的事情是我插入了Jquery地址插件-历史记录(后退/前进)跟踪不工作,jquery,url-rewriting,navigation,history,jquery-address,Jquery,Url Rewriting,Navigation,History,Jquery Address,我已经试着让Jquery地址插件正常工作了大约12个小时了,所以我想是时候发布了。我的问题是前后导航不起作用。IE:点击一个链接,然后点击“后退”按钮,实际上并不返回。但它改变了url。另一件让我相信我做了一些根本错误的事情是我插入了$.address.title($(this.attr)(“title”)并且它实际上不会更改地址 Jquery在这里: $('#swNavlist a').address(); $('#swNavlist a').click(function() {
$.address.title($(this.attr)(“title”)代码>并且它实际上不会更改地址
Jquery在这里:
$('#swNavlist a').address();
$('#swNavlist a').click(function() {
$("#swBody").block({
message:"Loading",
css: {
border: 'none',
padding: '15px',
backgroundColor: '#000',
'-webkit-border-radius': '10px',
'-moz-border-radius': '10px',
opacity: .5,
color: '#fff'
} });
var content_show = $(this).attr("href").replace(/^#/, '');
$.ajax({
method: "get",url: content_show,
//"+bvLanguage+"/
success: function(html){ //so, if data is retrieved, store it in html
$("#swBody").html(html); //show the html inside .content div
$("#swBody").unblock();
$.address.title($(this).attr("title"));
},//success
error: function(){
$("#swBody").unblock();
$("#swBody").block({
message:"Error Encountered",
css: {
border: 'none',
padding: '15px',
backgroundColor: '#000',
'-webkit-border-radius': '10px',
'-moz-border-radius': '10px',
opacity: .5,
color: '#fff'
},
timeout:1000
})
}
}); //close $.ajax(
$("#swNavlist").topZIndex();
});//end navigation
此处为HTML:
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<Title>Swebits Home</title>
<link href="css/swCss.css" rel="styleSheet" type="text/css" />
<script type="text/javascript" src="js/jquery.min.js"></script>
<script type="text/javascript" src="js/jquery.pngFix.js"></script>
<script type="text/javascript" src="js/jquery.blockUI.js"></script>
<script type="text/javascript" src="js/jquery.topzindex.min.js"></script>
<script type="text/javascript" src="js/sw.js"></script>
<script type="text/javascript" src="js/jquery.address-1.3.2.min.js?autoUpdate=1"></script>
</head>
<body>
<div id="swHead">
<div class="leftCol"></div>
<div class="centerCol">
<div class="navigation">
<ul id="swNavlist">
<li id="active"><a href="#home.html" id="current" title="Swebits Home">Home</a></li>
<li><a href="#webd.html" title="Swebits Web Development">Web Design</a></li>
<li><a href="#bla.html" title="webs.html">Web Systems</a></li>
<li><a href="" title="hosting.html">Hosting</a></li>
<li><a href="" title="photo.html">Photography</a></li>
<li><a href="" title="portfolio.html">Portfolio</a></li>
<li><a href="" title="network.html">Our Network</a></li>
<li><a href="" title="contact.html">Contact</a></li>
</ul>
</div>
</div>
<div class="rightCol"></div>
</div>
<div id="swContainer" class="clearfix">
<div id="swCenter" class="clearfix">
<div id="swBody">
<?php
include("home.html");
?>
</div>
<div id="swFooter">
</div>
</div>
</div>
</body>
斯威比特之家
最后,我尝试实现一个if语句,这样,如果目标为空,页面将重定向到“error.html”,但这似乎也不起作用
我感谢你的帮助 这个插件似乎和许多其他历史/哈希插件做的一样。然而,根据示例,他确实调用了init()函数,尽管文档说您不必这样做
查看其来源,查看是否有一些内容记录不正确问题是,如果您自己(通过单击事件触发函数)加载页面,那么在创建一个由JQ地址事件触发的函数时,您需要做的是更改
,并在其中使用JQ地址值
属性(在#
之后的深度链接值)设置要使用AJAX加载的正确页面
现在,您正在告诉JQ Address您当前的页面状态是什么,但您没有告诉它如何处理该值,您需要自己进行更改,这样当您输入正确的URL或使用“后退”按钮时,JQ Address就无法进行更改。我时间不够,可能误解了您的操作,因此我不发布帖子如果我正确理解了你的目标,我相信最适合你使用的插件是