【发布时间】:2015-01-27 23:43:58
【问题描述】:
我有一个带有可点击 div 的页面,点击时会切换内容。第二次单击 div 时(关闭内容),页面跳回顶部。
我看到这是其他人遇到的问题,但是我发现的所有解决方案都与锚标签有关,这不是这里的问题。
我尝试根据解决方案here 更改我的代码并添加return false; 和event.preventDefault();,但这些都不起作用。我做错了什么?
jQuery:
$(document).ready(function(){
$('h1').animate({"right":"147px"},3000);
$('.more').toggle(
function(){
$(this).css({
'z-index':'100',
'background-position': '41px 0px'
});
$('#heroFullColor').hide();
$('#heroNoColor').show();
$('div.' + $(this).attr('id')).fadeIn('fast');
$('.more').not(this).hide();
},
function(){
$(this).css({
'background-position': '0px 0px'
});
$('div.' + $(this).attr('id')).fadeOut('fast');
$('#heroNoColor, .infoWindow').hide();
$('#heroFullColor').fadeIn('fast');
$('.more').not(this).show();
});
});
HTML 结构(在页面上重复多次):
<div class="more" id="franceFlag"></div>
<div class="infoWindow franceFlag">
<img class="imageOn" src="images/lp_foundry_on-franceFlag.jpg" width="71" height="213" alt="French Flag" id="franceFlagOn" />
<p class="franceFlag">blah blah blah</p>
</div>
<div class="more" id="heliBoth"></div>
<div class="infoWindow heliBoth">
<img class="imageOn" src="images/lp_foundry_on-heliBoth.jpg" width="296" height="750" alt="Helicopters" id="heliBothOn" />
<p class="heliBoth">blah blah blah</p>
</div>
Here is a fiddle - 如果你滚动到右下角,然后点击旗帜旁边的 + 号,你就会明白我的意思了。
【问题讨论】:
-
您能在jsfiddle.net 上发布一个工作示例吗?
-
@BobM jsfiddle.net/11cptbmz 也更新了问题。谢谢。