我有一些代碼,在整個main.js複製的文件的Javascript功能的createElement
的Javascript複製例子:
Example 1
for (i = userVote; i < 5; i++) {
var newVotesInput = document.createElement("input");
newVotesInput.id = "vote" + i;
newVotesInput.classList.add("vote", "displayn");
newVotesInput.type = "radio";
newVotesInput.name = "vote";
newVotesInput.value = i;
someElement.appendChild(newVotesInput);
}
Example 2
for (i = 1; i <= userVote; i++) {
var newVotesLabel = document.createElement("label");
newVotesLabel.id = "voteLabel" + i;
newVotesLabel.classList.add("voteHover");
newVotesLabel.htmlFor = "vote" + i;
someElement.appendChild(newVotesLabel);
}
Example 3
var newImg = document.createElement("img");
newImg.classList.add("babeImg", "boxsb", "leftIn");
newImg.id = "imgSrc";
newImg.src = jsonData.imgSrc;
someElement.appendChild(newImg);
Example 4
var newShuffle = document.createElement("img");
newShuffle.classList.add("shuffleImg");
newShuffle.id = "shuffleImg";
newShuffle.src = "assets/img/refresh.png";
someElement.appendChild(newShuffle);
Example 5
newImg.classList.add("babeImg", "boxsb", "leftIn");
newImg.id = "imgSrc";
newImg.src = jsonData.imgSrc;
imgInner.appendChild(newImg);
正如你所看到的例子做的這是創建一個元素,但同樣有是幾個參數,不同於示例和示例。 我如何製作一個我可以用於所有人的功能? 現在我只知道如何建立一個整整一個具體的例子,像這樣 - >
function createElement(element, id, cls, src){
var newElement = document.createElement(element);
element.id = id;
element.classList.add(cls);
element.src = src;
someElement.appendChild(element);
}
這是bascially例4 ..但如何使這種更高效,可用在所有的例子嗎?
這看起來像我以前所做的一切,我會仔細看看你在這裏做了什麼,並試圖解決它。 – Heine
增加了一些提示,以便您更好地理解。 – Derlin
請不要在陣列上使用'for-in'。它會導致問題。無論哪種方式,你真的不需要循環來添加數組中的類。 'element.classList.add(...或者爲了不使用轉譯器而支持舊瀏覽器:'element.classList.add.apply(element.classList,cls)' – 2017-04-02 13:10:38