2015-11-18 62 views
0

我对JavaScript很陌生,所以我不明白什么是不工作的。 守则:使用JavaScript生成HTML不起作用?

var postCount = 0; 

function generatePost(title, time, text) { 
    var div = document.createElement("div"); 
    div.className = "content"; 
    div.id = "post_" + postCount; 
    document.getElementById("postcontainer").appendChild(div); 

    var h3 = document.createElement("h3"); 
    div.id = "post_h3_" + postCount; 
    h3.innerHTML = title; 
    document.getElementById("post_" + postCount).appendChild(div); 

    var span = document.createElement("span"); 
    document.getElementById("post_h3_" + postCount).appendChild(div); 
    span.innerHTML = time; 

    var paragraphs[] = text.split("||"); 
    for (var p : paragraphs[] { 
     var paragraphCount = 0; 
     var h3 = document.createElement("h3"); 
     document.getElementById("post_p_" + postCount + "_" + paragraphCount).appendChild(div); 
     paragraphCount++; 
    } 
    postCount++; 
} 

function loadPosts() { 
    generatePost("Testing Title", "I don't know", "This is || a paragraph"); 
} 

我与它包括:

<body onload="loadPosts()"> 

最后,什么也不显示。甚至没有在我的浏览器中的检查员。我的代码是否运行?我忘了一个重要的doStuffNow()吗?第二:如果我用JavaScript添加一个类到div,做style.css中的CSS规则追加到它吗?

+0

如果你设置你的代码格式,你会看到你有一个额外的或错位的右大括号:http://jsfiddle.net/isherwood/m5j4sjsk/ – isherwood

+0

不,右键缺失:for(var p:段落[]) {' – isherwood

+1

而不是在你的body的onload上添加函数,你应该把你的代码包装成当DOM像这样加载时调用的东西。 'document.addEventListener('DOMContentLoaded',function(){// YOUR_CODE_HERE})'然后调用'generatePost'函数,不需要'loadPosts'函数。 –

回答

1

要回答您的问题的第二部分,,将应用于类的CSS样式添加到您添加相同类的对象。

+0

谢谢! – TheLexoPlexx

0

您的代码有错误。你用什么编辑器?您还可以使用浏览器控制台来检查页面中的错误。 检查这里:

var paragraphs = text.split("||"); 
for (var p in paragraphs) { 
    /* 
    * 
    * Where do you use your var p? 
    * 
    */ 
    var paragraphCount = 0; 
    var h3 = document.createElement("h3"); 
    document.getElementById("post_p_" + postCount + "_" + paragraphCount).appendChild(div); 
    paragraphCount++; 
} 

你为什么不尝试使用jQuery?

+0

我正在使用来自Adobe的括号,它对PHP和/或JavaScript尚不适用。 我没有使用jQuery,因为它是一个API,另一个文件,网站=较慢。 – TheLexoPlexx

+0

使用CDN。缩小版本小于50kb,下载速度非常快,时下连接:) – Yuri

+0

尝试使用PhpStorm,SublimeText,Netbeans进行编程 – Yuri