我正在使用history.js脚本来管理 HTML5 历史状态更改。我的代码在最新版本的 Chrome 和 Firefox 中运行良好,但无法在 IE9 中运行。我已经尝试了 github 站点上提供的 history.js 和 history.iegte8.min.js 脚本。
我选择这个脚本的原因是因为它遵循与正确的 HTML5 API 相同的语法,这意味着当用户最终进入 IE10 时所做的更改最少。
这是代码。
<!-- Placed at the end of the document so the pages load faster -->
<script src="js/jquery-1.8.2.min.js"></script>
<script src="bootstrap/js/bootstrap.min.js"></script>
<script src="js/history.iegte8.min.js"></script>
<script type="text/javascript">
$(function() {
$(window).bind('popstate', function( e ) {
var historyState = history.state;
if ( historyState ) {
loadContent(historyState.link)
} else {
// Open Business Unit Reporting folder
$('#item-2').prop('checked',true);
}
});
$('li a').click(function(e) {
var latestLink = '<li>' + getLabelHierarchy(this) + '<a href="'+$(this).attr('href')+'">'+$(this).html()+'</a></li>';
var historyList = latestLink + $('#historyList').html();
history.replaceState({link: historyList}, null, null);
});
$(window).trigger( "popstate" );
});
function getLabelHierarchy(node) {
<< code omitted >>
}
function loadContent(links) {
$('#historyList').append(links);
}
</script>
有人在 IE9 中使用过这个脚本吗?
非常感谢任何帮助。