我如何改变这一点,以便#animation src仅在if = statement.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>
答案 0 :(得分:0)
试试这个:
$(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');
}
});
});
答案 1 :(得分:0)
您可以使用:
$("#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');
}
});
答案 2 :(得分:0)
您可以通过查看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>