Я хочу изменить изображение, когда я нажимаю ссылку. У меня есть код ниже. Первый щелчок работает. Но во втором клике это не так.
menu_span - это "идентификатор ссылки"
menu_image - "идентификатор изображения"
$(function() {
$("#menu_span").click( function(){
if(document.getElementById('menu_image').src ="images/arti.jpg")
{
document.getElementById('menu_image').src ="images/eksi.jpg";
}
else
if(document.getElementById('menu_image').src ="images/eksi.jpg")
{
document.getElementById('menu_image').src ="images/arti.jpg";
}
}
);
});
он работает, как показано ниже. Но я не хочу использовать "i2"
var i2=0;
$("#slider_span").click( function(){
if(i2==0)
{
document.getElementById('slider_image').src ="images/eksi.jpg";
document.getElementById('slider_div').style.display="inline-block";
i2=1;
}
else
if(i2==1)
{
document.getElementById('slider_image').src ="images/arti.jpg";
document.getElementById('slider_div').style.display="none";
i2=0;
}
}
);
пожалуйста помоги!
Использовать ==
, not =
для проверки равенства:
if (document.getElementById('menu_image').src == "images/arti.jpg") {
document.getElementById('menu_image').src ="images/eksi.jpg";
} else if(document.getElementById('menu_image').src == "images/eksi.jpg") {
document.getElementById('menu_image').src ="images/arti.jpg";
}
Но вместо проверки состояния элемента вам лучше сохранить его в переменной:
$(function() {
var nbchanges = 0;
$("#menu_span").click( function(){
$('#menu_image').prop('src', (nbchanges++)%2 ? "images/arti.jpg" : "images/eksi.jpg");
});
});
Вы также можете использовать ===, чтобы избежать преобразования типов.