【发布时间】:2016-06-15 12:17:45
【问题描述】:
我制作了一个无序列表,将其列表项随机化,我只想在正常屏幕尺寸上显示 5 个,在较小屏幕尺寸上显示 3 个。
通过使用 jQuery slice() 函数,我根据窗口大小删除了其他列表项。
但是,在达到 650px 的窗口大小时,我似乎无法重新附加已删除的列表项。 我尝试使用detach() 函数,但目前无法使用。
这是我的代码:
function showHide() {
var displayDefaultLarge = $("ul li").slice(5);
var displayDefaultSmall = $("ul li").slice(3);
var insertLarge = displayDefaultLarge;
if ($(window).width() < 650) {
insertLarge = displayDefaultSmall.detach();
} else {
insertLarge.appendTo("ul");
insertLarge.detach();
}
}
showHide();
$(window).resize(function() {
showHide();
});
可以在此处找到显示问题所在的 Jsfiddle:https://jsfiddle.net/ccmrfb4z/
提前致谢。
【问题讨论】:
-
你能创建一个 jsfiddle jsfiddle.net 来演示吗?为什么在
.appendTo()else之后调用.detach()? -
我刚刚添加了一个 jsfiddle。我按此顺序调用它们,因为它会显示所有列表项。
标签: javascript jquery append html-lists detach