首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jquery -无法将元素获取到fadeOut / fadeIn

jquery -无法将元素获取到fadeOut / fadeIn
EN

Stack Overflow用户
提问于 2014-11-26 09:02:04
回答 4查看 77关注 0票数 0

我编写了这段代码,以替换他们单击的img的文本。我不明白为什么我的代码没有执行,我一遍又一遍地查看它。我希望有人能发现我的错误

这是jQuery代码:

代码语言:javascript
复制
$(document).ready(function() {
            $('#text-1').fadeIn(500);
            //click event
            $('.img').click(function() {
                var currentId = $(this).attr('id');
                alert(currentId);
                if (currentId===3) {
                    $('#text-3').fadeIn('fast');
                    $('#text-2, #text-1').css('display', 'none');
                } else if (currentId===2) {
                    $('#text-2').fadeIn('fast');
                    $('#text-1, #text-3').css('display', 'none');
                } else if (currentId===1) {
                    $('#text-2').fadeIn('fast');
                    $('#text-1, #text-3').css('display', 'none');
                }
            });
        });

这是HTML:

代码语言:javascript
复制
<div>
        <div id="icon">
            <a id="1" class="img" href=""><img style="background: url(http://images.webydo.com/10/100459/169860/hutim.jpg) 0 0;" src="" /></a>
            <a id="2" class="img" href=""><img style="background: url(http://images.webydo.com/10/100459/Folder%201/work_electric_main_banner.png) -20px -10px;" src="" /></a>
            <a id="3" class="img" href=""><img src="http://hviil.co.il/wp-content/uploads/2013/02/DS-2CD7254F-EIZ-310x310.jpg" alt="מצלמות אבטחה" /></a>
        </div>
        <div id="text">
            <div id="text-1" class="textbox">
                <h2>1</h2>
                <p>adssssssssssssssssssssssasdsaaaaaaaaaaaaaaaaaaaa</p>
            <div id="text-2" class="textbox">
                <h2>2</h2>
                <p>adssssssssssssssssssssssasdsaaaaaaaaaaaaaaaaaaaa</p>
            </div>
            <div id="text-3" class="textbox">
                <h2>3</h2>
                <p>adssssssssssssssssssssssasdsaaaaaaaaaaaaaaaaaaaa</p>
            </div>
        </div>
    </div>

救命啊!谢谢

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2014-11-26 09:15:45

HTML

代码语言:javascript
复制
<div>
   <div id="icon">
            <a id="1" class="img" href=""><img style="background: url(http://images.webydo.com/10/100459/169860/hutim.jpg) 0 0;" src="" /></a>
            <a id="2" class="img" href=""><img style="background: url(http://images.webydo.com/10/100459/Folder%201/work_electric_main_banner.png) -20px -10px;" src="" /></a>
            <a id="3" class="img" href=""><img src="http://hviil.co.il/wp-content/uploads/2013/02/DS-2CD7254F-EIZ-310x310.jpg" alt="מצלמות אבטחה" /></a>
        </div>
        <div id="text">
            <div id="text-1" class="textbox">
                <h2>1</h2>
                <p>adssssssssssssssssssssssasdsaaaaaaaaaaaaaaaaaaaa</p>
            <div id="text-2" class="textbox">
                <h2>2</h2>
                <p>adssssssssssssssssssssssasdsaaaaaaaaaaaaaaaaaaaa</p>
            </div>
            <div id="text-3" class="textbox">
                <h2>3</h2>
                <p>adssssssssssssssssssssssasdsaaaaaaaaaaaaaaaaaaaa</p>
            </div>
        </div>
    </div>

JS

代码语言:javascript
复制
$(document).ready(function() {
            $('#text-1').fadeIn(500);
            //click event
            $('.img').click(function() {
                var currentId = $(this).attr('id');
                alert(currentId);
                if (currentId==3) {
                    $('#text-3').fadeIn('fast');
                    $('#text-2, #text-1').css('display', 'none');
                } else if (currentId==2) {
                    $('#text-2').fadeIn('fast');
                    $('#text-1, #text-3').css('display', 'none');
                } else if (currentId==1) {
                    $('#text-2').fadeIn('fast');
                    $('#text-1, #text-3').css('display', 'none');
                }
            });
        });

工作链路http://jsbin.com/heseforaxe/1/edit?html,js,output

票数 0
EN

Stack Overflow用户

发布于 2014-11-26 09:09:59

问题在你的状态检查中

而不是使用

currentId===3 //检查currentId是数字3

使用

currentId=='3' //将===更改为==,检查currentId是否为字符串类型3

还有一件事,在单击a之后,您的页面将被重定向,因此如果您想要阻止这种情况,请使用preventDeault或将#放在href中。

票数 1
EN

Stack Overflow用户

发布于 2014-11-26 09:17:27

var currentId = $(this).attr('id');

属性的所有值都是字符串,而不是数字。所以,你可以这样改变。

currentId==="3";

currentId==3;

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27144946

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档