2014-10-31 68 views
0

我想为Magento页面上的循环中的每个元素创建一个新的红色div。但是当我预览页面时没有任何反应。我的循环工作并返回3个警报框,所以我期望得到3个红色的div与下面的代码,但没有任何反应!为什么不能在Magento中创建一个新的DIV?

var campaigns = document.getElementsByClassName("campaign"); 

for (var i=0, max= campaigns.length; i <= max; i++) { 

//This alert works - alert("Campaign" + i); 

var newDiv = document.createElement('div'); 

    newDiv.id = 'example'+i; 
    newDiv.className = 'examples'; 
    newDiv.style.color = "red"; 
    document.appendChild(newDiv); 

}; 
+0

您正在使用基本javascript来添加元素。它应该在那里。可能性是它没有任何东西在div中,所以你没有看到它。尝试添加'newDiv.style.min-height =“20px”;'。 – charles 2014-10-31 12:03:47

+0

我试图设置高度并添加文本到Div,但我仍然无法看到任何东西。 – 2014-10-31 13:02:18

+0

你可以发布你现有的html并完成js吗? – charles 2014-10-31 13:11:21

回答

0

在为条件,你应该使用我<最大,否则循环将执行一次比它应该更多。

为了使div可见,您应为其设置文本或设置背景颜色,宽度和高度。

最后,您将元素附加到文档元素,这实际上并不合理。您必须通过document.body.appendChild或campaign [i] .appendChild进行替换。

相关问题