我有一个代码在一个按钮的onclick的一个按钮
onClick="$('img').removeClass('highlighted');$(this).addClass('highlighted')
以及它将使该按钮被突出显示,但有可能在那里添加检查语句,看看是否按钮已经突出显示并dehighlight它而不是让它保持突出显示?
我有一个代码在一个按钮的onclick的一个按钮
onClick="$('img').removeClass('highlighted');$(this).addClass('highlighted')
以及它将使该按钮被突出显示,但有可能在那里添加检查语句,看看是否按钮已经突出显示并dehighlight它而不是让它保持突出显示?
你可以使用jQuery的方法做到这一点:hasClass
onClick="if($('img').hasClass('highlighted')) {$('img').removeClass('highlighted');} else {$(this).addClass('highlighted')}
请注意,您的意思是“如果img没有突出显示的类,则删除突出显示的类”,这没有意义。可能只是一个错字。 – h2ooooooo
@ h2ooooooo:当然,愚蠢的我...固定并感谢 – Constantinius
你应该在JavaScript中使用.click
代替,因为它更容易阅读和事后管理:
<script type="text/javascript">
$(document).ready(function() {
$("#button").click(function() {
if ($(this).hasClass('highlighted')) {
$('img').addClass('highlighted');
$(this).removeClass('highlighted');
} else {
$('img').removeClass('highlighted');
$(this).addClass('highlighted');
}
}
});
</script>
您还可以使用toggleClass
:
<script type="text/javascript">
$(document).ready(function() {
$("#button").click(function() {
$('img').toggleClass('highlighted');
$(this).toggleClass('highlighted');
}
});
</script>
该代码看起来很疯狂。你在使用jQuery吗?如果是这样,请在点击处理程序中进行检查。
$("img").on("click", function(event){
var $this = $(this);
if($this.hasClass("highlighted")) {
$this.removeClass("highlighted")
} else {
$this.addClass("highlighted")
}
});
这有帮助吗?
很简单老板:使用hasClass()
$('img').click(function(){
if($(this).hasClass('highlighted')){
$('img').removeClass('highlighted');
}
else{
$(this).addClass('highlighted')
}
});
感谢所有的及时答复,所有的解决方案的工作,但我可能会选择在一个接近我有什么,一个衬垫,而不是添加功能。 – jonleech