gpt4 book ai didi

javascript - 切换包含内部 HTML 元素的 文本

转载 作者:行者123 更新时间:2023-12-04 00:49:00 25 4
gpt4 key购买 nike

单击按钮时,我想将其文本从“查看更多”切换为“查看更少”。但是,span 元素中包含另一个元素(Font Awesome 图标)。当我切换 span 元素的文本时,其中的元素消失了。您可以在下面的代码片段中看到它。

我也试过这个解决方案:

$('.button span').text(($('.button span').text()=='View More<i class="fas fa-angle-down"></i>') ? 'View Less<i class="fas fa-angle-up"></i>' : 'View More<i class="fas fa-angle-down"></i>');

但它会将 i 元素作为跨度文本而不是作为元素插入。

注意:我不能将 i 元素保留在 span 元素之外,因为我在 CSS 中有某些动画。

$('.button').click(function() {
$('.button i').toggleClass('fa-angle-up fa-angle-down');
$('.button span').text(($('.button span').text()=='View More') ? 'View Less' : 'View More');
});
.button {
width: 250px;
padding: 12px 0;
text-transform: uppercase;
cursor: pointer;
}

.button i {
margin-left: 10px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
<script src="https://kit.fontawesome.com/a671c6b423.js" crossorigin="anonymous"></script>

<button type="button" name="button" value="" class="button">
<span>View More<i class="fas fa-angle-down"></i></span>
</button>

最佳答案

$('.button').click(function() {
$('.button span').html(($('.button span').text()=='View More') ? 'View Less<i class="fas fa-angle-up">' : 'View More<i class="fas fa-angle-down">');
});
.button {
width: 250px;
padding: 12px 0;
text-transform: uppercase;
cursor: pointer;
}

.button i {
margin-left: 10px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
<script src="https://kit.fontawesome.com/a671c6b423.js" crossorigin="anonymous"></script>

<button type="button" name="button" value="" class="button">
<span>View More<i class="fas fa-angle-down"></i></span>
</button>

关于javascript - 切换包含内部 HTML 元素的 <span> 文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68082267/

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