我有一个页面,其中有一个锚标记:<a href="tut.html#div2">jump to div2</a>
。
这个锚标记会打开tut.html
,其中div
带有id=div2
:
<div class="container">
<div class="row">
<div class="col-lg-8 col-lg-offset-2 col-md-10 col-md-offset-1">
<div id="div1">
--some content--
</div>
<div id="div2" style="display:none;">
--some content--
</div>
</div>
</div>
</div>
默认情况下,隐藏div2
的内容。当用户点击另一个页面中的超链接时,如何显示或淡入其内容?
答案 0 :(得分:1)
您可以轻松检查传入的hash
并使用它来显示相应的块:
window.onload = function(){
var element = document.querySelector(location.hash);
if(element) element.style.display = "block";
}
答案 1 :(得分:1)
你的href链接不应链接到页面,只能链接到锚点:
<a class="myButton" href="#div2">link</a>
<div class="container">
<div class="row">
<div class="col-lg-8 col-lg-offset-2 col-md-10 col-md-offset-1">
<div id="div1">
--some content--
</div>
<div id="div2" style="display:none;">
--some content--
</div>
</div>
</div>
</div>
使用jQuery,你应该在文档底部有一个函数来处理你的点击:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"> </script>
<script>
$(function () {
$('a.myButton').on('click', function(event){
event.preventDefault();
$('div2').fadeIn('slow');
return false;
})
});
</script>
答案 2 :(得分:1)
如果链接转到新页面:
<a href="tut.html#div2">link</a>
在新页面的底部&#39; tut.html&#39; :
<script>
$(function () {
var hash = window.location.hash;
if(hash == '#div2') $(hash).fadeIn('slow');
});
</script>