我有页的一些数据在制表符中,我试图写一个函数,以便当链接是从另一个页面点击可以加载页与选项卡和显示正确的选项卡。这使用下面的代码,减去实际更改的选项卡函数。但出于某种原因使用window.location.作为一个变量,页面仍然向下滚动到匹配的id。是否有其他方法可以在#后面的url中获取字符串。或者我可以这样做,但不需要跳到id?谢谢
function loadTab(){
var linkToTab = window.location.hash.substr(1);
var linkClass = '.'+linkToTab
if(window.location.hash != '') {
changeTabs(linkClass);
}else{
$('.companyLink:first').addClass('active');
$('.companyBio:first').addClass('active');
$('.companyBio:first').fadeIn();
};
}发布于 2013-10-10 12:00:31
散列字符用于锚。
使用问号而不是散列。
<a href="index.html?tabname">和
var linkToTab = window.location.search.substr(1);
var linkClass = '.'+linkToTab
if(window.location.search != '') {发布于 2013-10-10 11:43:15
URL的#部分传统上用于锚点。你看到的“跳跃”是最初的特征。
现代网站和网络应用程序使用它建立了一个历史,作为HTML5 5的历史特性还没有得到广泛的支持。。
为了避免跳转,将event.preventDefault添加到链接中,如:
<a href="#tab1" id="tab1handle">Tab1</a>
<script type="text/javascript">
document.getElementById("tab1handle").onclick = function (event) {
event.preventDefault();
}
</script>还可以确保没有定义锚。在这种情况下,浏览器将跳转到页面的顶部。这是否不受欢迎取决于你。
https://stackoverflow.com/questions/19294776
复制相似问题