gpt4 book ai didi

javascript - 使用 jQuery 移动元素

转载 作者:行者123 更新时间:2023-11-30 10:33:42 25 4
gpt4 key购买 nike

我有一个带有可扩展链接的边栏。当它们扩展超过某个点时,我想将一些文本从一个 div 移动到另一个(红色到蓝色)。当我展开和折叠链接时,我计划移动的文本有时会消失。

有两个问题:

  1. 展开时文本应移至蓝色 div,折叠时应移回红色
  2. 文本完全消失,没有移动到另一个 div。

这是我的 html:

<div id="sidebar">
<div>
<a href="#" class="cal-title">Test 1</a>
<p class="cal-desc">Lorem ipsum</p>
</div>
<div>
<a href="#" class="cal-title">Test 2</a>
<p class="cal-desc">Lorem ipsum</p>
</div>
<div>
<a href="#" class="cal-title">Test 3</a>
<p class="cal-desc">Lorem ipsum</p>
</div>
</div>

<div class="red">
<p>Just some random text</p>
</div>

<div class="blue">
</div>

这是 jQuery/js 代码:

$(document).ready(function() {  
var isExtended = false;
function placeTiles() {
// When to move content from .red to .blue
if ($('#sidebar').height() > 150 && isExtended == false) {
$('.red').appendTo($('.blue'));
isExtended = true;
// When to move content from .red to .blue
} else if ($('#sidebar').height() <= 150 && isExtended == true) {
$('.blue').appendTo($('.red'));
isExtended = false;
}
}

$('.cal-desc').hide();
// Check how thing are on init
placeTiles();

$('.cal-title').click(function() {
$(this).siblings('.cal-desc').toggle();
placeTiles();
});
});

这是我的 jsfiddle 的链接.

我真的是 javascript 的新手,所以非常欢迎对我的代码提出任何建议!

最佳答案

查看更新后的 fiddle :http://jsfiddle.net/awden/3/

问题是您将整个 .red 元素附加到 .blue 元素的内部

$('.red').appendTo($('.blue'))

相反,您想将.red内容 附加到.blue,反之亦然。换句话说,你想要这样的东西:

$('.red > p').appendTo($('.blue'))

关于javascript - 使用 jQuery 移动元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15258374/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com