有没有一种以更简单的方式编写代码的方法? 下面的代码示例显然使用jQuery,只是因为它看起来很简单。我相信肯定有更好的办法,因为它重复了功能的内容。 我感到困惑的是我如何将触发器中的ID传递给单个函数。有没有更简单的方法来编写这段代码?
当然,我意识到这可以用JavaScript来完成 - 任何编码指针,将不胜感激也。
感谢
这是HTML:
$(document).ready(function() {
$('.carImage').hide();
$('#triggerA').click(function(e) {
$("#imageA").show();
$("#imageB").hide();
$("#imageC").hide();
$("#imageD").hide();
});
$('#triggerB').click(function(e) {
$("#imageA").hide();
$("#imageB").show();
$("#imageC").hide();
$("#imageD").hide();
});
$('#triggerC').click(function(e) {
$("#imageA").hide();
$("#imageB").hide();
$("#imageC").show();
$("#imageD").hide();
});
$('#triggerD').click(function(e) {
$("#imageA").hide();
$("#imageB").hide();
$("#imageC").hide();
$("#imageD").show();
});
});
.item {
font-family: "Trebuchet MS", Arial, Helvetica, sans-serif;
font-size: 3em;
padding: 1em;
margin: 0.5em;
background-color: #36F;
color: #FFF;
width: 75px;
float: left;
}
.item:hover {
background-color: #F0C;
}
a {
text-decoration: none;
color: #FFF;
}
#selectors {
overflow: auto;
}
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div id="selectors">
<div class="item" id="triggerA">
A
</div>
<div class="item" id="triggerB">
B
</div>
<div class="item" id="triggerC">
C
</div>
<div class="item" id="triggerD">
D
</div>
</div>
<img src="http://dummyimage.com/100/ff0" id="imageA" class="carImage" />
<img src="http://dummyimage.com/100/f0f" id="imageB" class="carImage" />
<img src="http://dummyimage.com/100/0ff" id="imageC" class="carImage" />
<img src="http://dummyimage.com/100/0f0" id="imageD" class="carImage" />
嗯,你已经用JavaScript做什么呢? – adeneo
你可以用css来完成所有的工作,只取决于你想要的确切功能。 – Kenyanke
您可以在选择器中一次选择多个项目(例如$('#imageB,#imageC,#imageD')。hide()) – tabz100