Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/366.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用“更多/更少”更改滑动切换功能上的div高度_Javascript_Jquery_Show Hide_Slidetoggle - Fatal编程技术网

Javascript 如何使用“更多/更少”更改滑动切换功能上的div高度

Javascript 如何使用“更多/更少”更改滑动切换功能上的div高度,javascript,jquery,show-hide,slidetoggle,Javascript,Jquery,Show Hide,Slidetoggle,我如何更新我的代码,这样我就可以通过滑动切换来改变高度,现在它几乎是正确的,但当我点击一个“阅读更多”并点击另一个“阅读更多”时,它就不正确了。我需要什么时候是向下滑动显示隐藏的p和改变主要的具体高度,什么时候是滑动隐藏这个p和改变以前的具体高度。。。阅读更多基础。主要高度。。。少读新的。主要高度 请参阅下面的或代码 HTML JavaScript 我已经升级了您的JSFIDLE: 所做的更改包括: 已从主容器中删除高度属性 重构了rm的脚本。单击 我不确定您的代码是否除了slideToggle

我如何更新我的代码,这样我就可以通过滑动切换来改变高度,现在它几乎是正确的,但当我点击一个“阅读更多”并点击另一个“阅读更多”时,它就不正确了。我需要什么时候是向下滑动显示隐藏的p和改变主要的具体高度,什么时候是滑动隐藏这个p和改变以前的具体高度。。。阅读更多基础。主要高度。。。少读新的。主要高度

请参阅下面的或代码

HTML

JavaScript


我已经升级了您的JSFIDLE:

所做的更改包括:

已从主容器中删除高度属性

重构了rm的脚本。单击

我不确定您的代码是否除了slideToggle之外还做了其他事情,但这一行程序可能会完成您需要的所有功能

$(this).prev('.more').slideToggle();
更改了jQuery代码:

var rm = $(".read_more"),
moreText = "... Read More",
lessText = "... Read Less";

rm.click(function () {

    $(this).prev('.more').slideToggle();

    if($(this).text()==moreText){
        $(this).text(lessText);
    }else{
        $(this).text(moreText);
    }

});
更改的CSS:

.main {
    border:1px solid blue;
    padding: 5px;
}

我已经升级了您的JSFIDLE:

所做的更改包括:

已从主容器中删除高度属性

重构了rm的脚本。单击

我不确定您的代码是否除了slideToggle之外还做了其他事情,但这一行程序可能会完成您需要的所有功能

$(this).prev('.more').slideToggle();
更改了jQuery代码:

var rm = $(".read_more"),
moreText = "... Read More",
lessText = "... Read Less";

rm.click(function () {

    $(this).prev('.more').slideToggle();

    if($(this).text()==moreText){
        $(this).text(lessText);
    }else{
        $(this).text(moreText);
    }

});
更改的CSS:

.main {
    border:1px solid blue;
    padding: 5px;
}

如果需要特定高度,可以使用css属性:最小高度:260px

JS


如果需要特定高度,可以使用css属性:最小高度:260px

JS

试试这个

jsfiddle.net/4MfLw/8/
我已经更新了你的代码

我已经从主类的css中删除了高度属性 另外,我已经对你的动画代码进行了注释,并且我已经编写了代码,如果其他更多的div打开,请向上滑动

jsfiddle.net/4MfLw/8/
我已经更新了你的代码

我已经从主类的css中删除了高度属性

另外,我已经对你的动画代码进行了注释,并且我已经编写了代码,以便在其他所有更多div打开时向上滑动

是否需要设置特定的高度?如果没有,只需更改css.main{height:auto;…}并删除第二个单击功能。谢谢@Matt,但我需要一个特定的高度我知道你需要一个特定的高度:-所有现有的答案现在都不正确。@onlinepch特定的最小高度可以吗?@YB非常感谢你的帮助,第一次看就可以了,但是当滑动时,我需要先前的高度。这个想法是当滑动切换高度改变它时。你必须设置一个特定的高度吗?如果没有,只需更改css.main{height:auto;…}并删除第二个单击功能。谢谢@Matt,但我需要一个特定的高度我知道你需要一个特定的高度:-所有现有的答案现在都不正确。@onlinepch特定的最小高度可以吗?@YB非常感谢你的帮助,第一次看就可以了,但是当滑动时,我需要先前的高度。这个想法是当滑动切换高度改变它。请不要只是链接到一个演示。答案中应添加所有相关代码更改。StackOverflow可能会比JSFIDLE更持久。您需要更新您的演示链接,但我知道+1会很快修复它。完成。再次感谢!请不要只是链接到演示。答案中应添加所有相关代码更改。StackOverflow可能会比JSFIDLE更持久。您需要更新您的演示链接,但我知道+1会很快修复它。完成。再次感谢!指向演示的链接并不能回答这个问题。@andyb我已经更新了代码,效果很好there@SnehalS有一面旗帜专门为这些答案而设。它被称为只链接的答案。Andy有一个观点-至少为您的更改提供解释。如果JSFIDLE关闭或永久关闭,这怎么仍然是一个好的答案?一个指向演示的链接并不能回答这个问题。@andyb我已经更新了代码,它工作得很好there@SnehalS有一面旗帜专门为这些答案而设。它被称为只链接的答案。Andy有一个观点——至少为您的更改提供解释。如果JSFIDLE下降或永远消失,这怎么仍然是一个好的答案?但这是一个特定的起始高度。对我来说这似乎是一个很好的解决方案,但也许@onlinepch如果你有具体的要求,你可以与他们一起编辑问题吗?非常感谢@andyb,但在我的页面上有些不对劲,演示看起来很好,这是一个很好的练习,希望它能帮助有相同问题的人。嗨,伙计们,我想我明白了,如果有人有和我一样的问题,请参阅更新的。再次感谢你的帮助!我一定错过了一些东西,但你的演示产生了和我一样的结果,我不需要动画。但这是一个特定的起始高度。对我来说这似乎是一个很好的解决方案,但也许@onlinepch如果你有具体的要求,你可以与他们一起编辑问题吗?非常感谢@andyb,但在我的页面上有些不对劲,演示看起来很好,这是一个很好的练习,希望它能帮助有相同问题的人。嗨,伙计们,我想我明白了,如果有人有和我一样的问题,请参阅更新的。再次感谢你的帮助!我一定错过了什么 但是你的演示和我的一样,我不需要动画。
jsfiddle.net/4MfLw/8/