Если заявление для Image SRC
Как я могу изменить это так, чтобы #animation src изменялся только в том случае, если его еще нет = suit.gif с помощью оператора if не может понять синтаксис.
<script type="text/javascript">
$(function() {
$("#nav").click(function() {
$('html,body').animate({
scrollTop: $(document).scrollTop()+600
}, 1000);
$('#animation').attr('src','images/suit.gif');
});
});
</script>
3 ответа
Решение
Попробуй это:
$(function() {
$("#nav").click(function() {
$('html,body').animate({
scrollTop: $(document).scrollTop()+600
}, 1000);
if($('#animation').attr('src') != 'images/suit.gif'){
$('#animation').attr('src','images/suit.gif');
}
});
});
Ты можешь использовать:
$("#nav").click(function () {
$('html,body').animate({
scrollTop: $(document).scrollTop() + 600
}, 1000);
var src = $('#animation').attr('src').split('/'),
imgName = src[src.length - 1];
if (imgName != "suit.gif") {
$('#animation').attr('src', 'images/suit.gif');
}
});
Вы можете проверить текущий источник изображения, посмотрев на атрибут src, например:
var currentSource = $('#animation').attr('src');
Тогда вы можете проверить, что это такое. На вашем месте я бы использовал простой тест регулярных выражений, чтобы увидеть, заканчивается ли он suit.gif
, вот так:
var alreadySuit = /suit\.gif$/i.test(currentSource);
Ваш код будет выглядеть так:
<script type="text/javascript">
$(function() {
$("#nav").click(function() {
$('html,body').animate({
scrollTop: $(document).scrollTop()+600
}, 1000);
var anim = $('#animation');
if(!/suit\.gif$/i.test(anim.attr('src'))){
$('#animation').attr('src','images/suit.gif');
}
});
});
</script>