我有一个支持历史记录的 ajax 函数,但我想从链接加载页面内容。
这是我的 index.html
<!DOCTYPE html>
<html>
<head>
<title>demo</title>
<script src="jquery.tools.min.js"></script>
<link rel="stylesheet" type="text/css" href="tabs-no-images.css"/>
</head>
<body>
<ul class="css-tabs">
<li><a href="ajax1.htm">Tab 1</a></li>
<li><a href="ajax2.htm">Second tab</a></li>
<li><a href="ajax3.htm">An ultra long third tab</a></li>
</ul>
<div class="css-panes">
<div style="display:block"></div>
</div>
<script>
$(function() {
$("ul.css-tabs").tabs(
"div.css-panes > div",
{effect: 'ajax', history: true}
);
});
</script>
</body>
</html>
和我的 CSS
/* root element for tabs */
ul.css-tabs {
margin:0 !important;
padding:0;
height:30px;
border-bottom:1px solid #666;
}
/* single tab */
ul.css-tabs li {
float:left;
padding:0;
margin:0;
list-style-type:none;
}
/* link inside the tab. uses a background image */
ul.css-tabs a {
float:left;
font-size:13px;
display:block;
padding:5px 30px;
text-decoration:none;
border:1px solid #666;
border-bottom:0px;
height:18px;
background-color:#efefef;
color:#777;
margin-right:2px;
position:relative;
top:1px;
outline:0;
-moz-border-radius:4px 4px 0 0;
}
ul.css-tabs a:hover {
background-color:#F7F7F7;
color:#333;
}
/* selected tab */
ul.css-tabs a.current {
background-color:#ddd;
border-bottom:1px solid #ddd;
color:#000;
cursor:default;
}
/* tab pane */
.css-panes div {
display:none;
border:1px solid #666;
border-width:0 1px 1px 1px;
min-height:150px;
padding:15px 20px;
background-color:#ddd;
}
我有三个包含 ajax 内容的文件夹。
我希望,当用户转到页面 index.html 时,他们可以将任何页面(ajax1.htm 或 ..)的内容视为默认内容。所以我的问题是如何通过添加额外代码来处理我当前的代码?
并请描述要编辑的内容以及放置外部代码或其他内容的位置。
评论中的代码:
$(function() {
var current_hash = false;
setInterval(function() {
if (window.location.hash != current_hash) {
current_hash = window.location.hash;
$('#content').load("ajax1.htm?page=" + current_hash);
}
}, 100);
});