我正在为一家拥有许多办事处的公司创建一个联系页面,因此他们不想为每个办事处创建一个新页面,而是希望内容根据所选位置进行更改。
我让它与一个选择框一起工作,但在环顾四周后,它很难设置选择框的样式并且不适合移动设备。
因此,我想创建一个下拉导航菜单,当用户单击菜单项时,div 内容将更改(或隐藏 div 并将其替换为另一个)。我发现下面的代码只适用于两个链接,但客户有 40 多个办公室,所以我认为必须有更好的方法来处理这个问题?我可以获得每个链接或 li 一个唯一的 ID。
HTML:
<a href="#" id="link_1">Press me</a>
<a href="#" id="link_2">Press me</a>
<div id="div_1"> Content1 </div>
<div id="div_2"> Content2 </div>
查询:
$(document).ready(function(){
// Hide div 2 by default
$('#div_2').hide();
$('#link_2').click(function() {
$('#div_1').hide();
$('#div_2').show();
});
$('#link_1').click(function(){
$('#div_2').hide();
$('#div_1').show();
});
});
可以稍微改变一下问题,但仍然需要相同的结果:
我目前使用一个“选择框”,它完全按照我想要的方式使用以下内容:
JS:
<script type="text/javascript">
$(document).ready(function () {
$('.eurowrapper').hide();
$('#option1').show();
$('#selectMe').change(function () {
$('.eurowrapper').hide();
$('#'+$(this).val()).show();
})
});
</script>
HTML:
<div class="styled-select">
<select id="selectMe">
<option value="option1">Head Office</option>
<option value="option2">Belgravia</option>
<option value="option3">Brighton</option>
<option value="option4">Chelsea</option>
<option value="option5">Clapham</option>
<option value="option6">Glasgow</option>
<option value="option7">Holland Park</option>
<option value="option8">Hyde Park</option>
<option value="option9">Islington</option>
<option value="option10">Maidstone</option>
<option value="option11">Oxford</option>
<option value="option12">Reading</option>
<option value="option13">St John's Wood</option>
<option value="option14">Tower Bridge</option>
<option value="option15">Wapping</option>
<option value="option16">Cluttons Resorts</option>
</select>
</div>
和分区:
<div id="option1" class="eurowrapper" style="float: left;"> Content </div>
<div id="option2" class="eurowrapper" style="float: left;"> More Content </div>
上述工作完美,在页面加载“总公司”联系方式在那里,当从“选择”框中选择另一个城镇时,这种情况会发生变化。
我想像我之前说的那样离开选择框并使用下拉导航,有什么方法可以让我拥有与选择框完全相同的功能,JS fiddle: