Javascript JS脚本工作不正常

Javascript JS脚本工作不正常,javascript,html,Javascript,Html,JS代码: function showCaption() { var captionVis = $('.grey-box-caption-text').css('display'); if(captionVis = "none") { $('.grey-box-caption-text').width(0); $(this).find('.grey-box-caption-text').show().animate({'width': '464px

JS代码:

function showCaption() {
    var captionVis = $('.grey-box-caption-text').css('display');    
    if(captionVis = "none") {
      $('.grey-box-caption-text').width(0);
      $(this).find('.grey-box-caption-text').show().animate({'width': '464px'},750);}
    } else {
      $(this).find('.grey-box-caption-text').animate({'width': '0'},750,
                                                     function(){$(this).hide();});  
    }
};

$('.caption-container').click(function() {
    showCaption();
    return false;   
    }
 );
HTML代码:

<div class="one-half column home-three-img">
   <div class="caption-container">
      <div class="grey-box-caption">
      </div>
      <div class="grey-box-caption-text">This is a caption test - Hopefully this works
      </div>
   </div>
   <img src="images/3.jpg">
</div>

这是一个标题测试-希望它能起作用
这不管用,我是个笨蛋。请帮忙

我试图让标题部分从左向右滑动。当我单击父容器时,什么也没有发生。我希望当我再次点击时,标题会突然出现并隐藏起来

我已经正确加载了Jquery,并且有一个document.ready函数可以运行


链接到WIP

一个大问题是,
的值不会在“showCaption”函数中设置。添加一个
返回false到该函数的末尾:

function showCaption(){
    var captionVis = $('.grey-box-caption-text').css('display');    
    if (captionVis == "none") {
        $('.grey-box-caption-text').width(0);
        $(this).find('.grey-box-caption-text').show().animate({'width': '464px'},750);
    }
    else {
        $(this).find('.grey-box-caption-text').animate({'width': '0'},750, function(){
            $(this).hide();
        }); 
    }
};
然后将处理程序分配更改为:

$('.caption-container').click(showCaption);

还请注意,如果
语句中的测试不正确,请使用
==
===
进行比较。

我将代码笔从尖头修改了一点,并且应该用更少的代码执行相同的操作

我不知道为什么在SO演示中灰色框会增加高度。在它的工作与这个“错误”

函数showCaption(){
变量$graybox=$('.graybox标题文本');
$graybox.animate({
宽度:“切换”,
不透明度:“切换”
}“慢”);
};
$(函数(){
$(“#包装”)。在(“单击”,显示标题);
});
。灰框标题{
最小高度:3em;
最小宽度:20px;
背景色:#bbb;
显示:内联块;
}
.灰色框标题文本{
显示:无;
填充:1em;
字体系列:无衬线;
空白:nowrap;
溢出:隐藏;
}

你好,世界,这是一些文字。

很难让一个问题变得更加模棱两可,而不仅仅是在没有任何解释的情况下说“它不起作用”。到底什么是不起作用的?它的作用是什么?你需要在你的JS中包含相关的HTML。我无法让标题部分滑到右边当你遇到JavaScript问题时,首先要做的是检查浏览器控制台是否有错误。你能给我看一下我尝试实现的JS,但它不起作用。我想我可能已经进去了incorrectly@alcoven这就是JS。您是否检查了浏览器控制台以查看是否有错误?原始源代码中的杂散
}
有问题,浏览器会对此进行投诉。好的,所以去掉了杂散,但现在它正在向我的div添加宽度:15px,并且该宽度没有在任何地方指定;[@alcoven这听起来像是另一个问题。@alcoven非常好!我现在正在使用$(this)使用多个$greybox来完成这项工作。不过,你刚刚用那个干净的JS杀死了它。