javascript - ggggleClass 不删除初始 div img 源

标签 javascript jquery html toggle

我正在尝试在图像之间切换,但我的代码只是将一个图像放在另一个图像之上,而不是删除初始图像。这就是我所拥有的:

<script>
var button = document.getElementById('box'),
    text = document.getElementById('menu');
button.onclick = function () {
    var isHidden = text.style.display == 'none';
    text.style.display = isHidden ? 'block' : 'none';
};
$("#box").click(function () {
    $(this).toggleClass("red");
});
</script> 

我将初始图像设置为 div,将第二个图像设置为类:

.close {
    width: 29px;    
    z-index: 1;
    height: 16px;
    cursor: crosshair;
   background-image: url('http://gabrielamagana.com/project1/ndxz-studio/site/sample/close-eye.png');
}

这可能不是最好的设置方法,但'=我对此还很陌生。

最佳答案

如果您尝试切换图像,请尝试以下技术:

我对您现有的 HTML 结构没有清楚的了解,因此这只是作为示例。

Live Demo

HTML

<div class='img1' id='dvImage'>&nbsp;</div>

JS

$(function(){
    var ele = $('#dvImage');
    ele.click(function(){
        ele.toggleClass("img2");
    });
}); 

CSS

.img1, .img2{
    width:400px;    
    height:100px; 
}

.img1{
    background-image:url('http://dummyimage.com/400x150/000/fff');
}

.img2{
    background-image:url('http://dummyimage.com/400x150/000/aaa'); 
}

注意:要消除初始图像加载之间的闪烁,请使用“sprite image ”。您将通过减少请求并消除与加载新图像相关的闪烁来提高性能。

关于javascript - ggggleClass 不删除初始 div img 源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20039236/

相关文章:

javascript - 为什么 typescript 不检查对象数组内容的命名?

javascript - 使用 Pickadate.js 时出现问题 - 显示效果不佳

php - 在每个 iframe 周围包裹一个 div

javascript - 高库存 : Property 'firePointEvent' of object #<Object> is not a function

javascript - Angular ,Javascript,PHP

asp.net - 在更新面板外部注入(inject) JavaScript

jQuery && 谷歌浏览器

jquery - 使用 jQuery 选择不在元素中的文本

html - 水平和垂直对齐 DIV - CSS

javascript - PLupload 只接受一些过滤器?