我知道使用jquery,如果我想在click事件上加载图像运行时,则使用此语法,
$("#open_door").attr("src", "../assets/door_open.gif");
但如果我想在另一个按钮的点击事件中删除相同的图像运行时,那么??我想要相同的语法
答案 0 :(得分:1)
如果您无法从dom中删除图像,请隐藏它:
$("#open_door").css("display","none");
答案 1 :(得分:1)
您可以简单地将元素的visibility css属性更改为hidden。这将允许它在页面布局中保持其位置,但不会被看到。
$('#open_door').css('visibility', 'hidden');
答案 2 :(得分:0)
你可以这样做:
$("#open_door").attr("src", ""); // Set the src to "" (nothing)
或者:
$("#open_door").remove(); // remove #open_door from the DOM.
在SO的其他地方找到这个,关于你对你的问题的评论:
$("#myimg").removeAttr("src").attr("src", "");
或者作为最后的手段,您可以将完全白色的图像上传到您的服务器,然后显示:
$("#open_door").attr("src", "path/to/white/image.jpg");
答案 3 :(得分:0)
我遇到类似Safari的问题。 它不会让我将属性设置为空值。我想要一个按钮来触发一个简短的gif动画来播放...在这种情况下,Spock给Kirk一个很好的SMACK !!
这是动画: http://www.lowbird.com/data/images/2012/06/tumblr-lq96pfhnuq1qlc8fao1-400.gif
我的解决方案对我来说有点麻烦,但我使用了.hide()方法。如果你想再次显示动画,你只需要在早些时候再次显示div。你走了:
$('#smackKirk').on('click', function(){
$('#animate').show(); // not necessary in chrome
$('#animate').attr("src", "http://www.lowbird.com/data/images/2012/06/tumblr-lq96pfhnuq1qlc8fao1-400.gif");
setTimeout(function() {
$('#animate').attr('src',"");
$('#animate').hide(); // not necessary in chrome
}, 2400);