gpt4 book ai didi

javascript - 在 JavaScript 中通过 innerHTML 从列表中删除项目

转载 作者:行者123 更新时间:2023-11-30 17:51:40 24 4
gpt4 key购买 nike

我是新来的,我被困在我的项目中......

我需要从电子商务的购物车中排除商品...

此购物车显示在 Fancybox 的 iframe 中。

它可以工作,但在 Chrome 中从视觉上看,它不工作。在 Firefox 和 IE 中它工作正常...

我的项目在 div 中命名为 div_1、div_2、div_3...

<div id="div_1">
content...
</div>
<div id="div_2>
content...
</div>
<div id="div_3>
content...
</div>

为了滚动页面,我将所有内容放在带有样式的主 div 中。

style="overflow: hidden; width:820px; height:auto;"

因为滚动是由 iframe(auto) 和我的主 div 控制的,所以定义了 widht 的值,高度是 auto 以适应我的内容...

在 div 中,我有一个来自产品、名称、价格的 img 和一个带有此 JS 的删除按钮:-

onClick="removeItem(<%=arrayIndexdiv%>)"

还有函数:-

<script>
function removeItem( itemid ) {
document.getElementById('div_' + itemid ).innerHTML = "";
}
</script>

换句话说,该函数只是删除 div,将它们从页面中排除...

当我的列表元素大于 iframe 大小时,垂直滚动条出现。

当我点击删除时,该项目在所有浏览器中都正确,但在 Chrome 中,iframe 的大小没有改变,而且我在所有项目上方、页脚之前有一个空白区域。

在 IE 和 Mozilla 中没问题,空格没有出现,但在 Chrome 中它在那里...

我不知道我能不能把网址放在这里帮助更多?如果可以,请告诉我!

谁能帮帮我?

对不起我的英语!

谢谢你们!

最佳答案

我相信你想从 DOM 中删除元素,而不仅仅是覆盖 div 的内容。

innerHTML 属性设置或获取描述元素后代的 HTML 语法。在您的情况下,您只是设置 div 内容:

document.getElementById('div_' + itemid ).innerHTML = "";

如果你想从 DOM 中移除元素:

function removeItem( itemid ) {
var element = document.getElementById('div_' + itemid ); // will return element
element.parentNode.removeChild(element); // will remove the element from DOM
}

此外,style="overflow: hidden; width:820px; height:auto;" 将 overflow hidden 的 div 但不会滚动它。

如果你想让它滚动,你可以设置overflow:scroll

关于javascript - 在 JavaScript 中通过 innerHTML 从列表中删除项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18885300/

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