Я новичок в программировании, и я начал делать это для веб-сайта neocities, на котором я добавил текстовый эффект радужного свечения, но теперь я хочу, чтобы другие элементы имели тот же эффект, и всякий раз, когда я пытаюсь его скопировать, он просто применяет его к первому. Есть ли способ добиться одинакового эффекта для нескольких элементов?
Я попробовал изменить идентификатор другого текста на «rainbow2» и сделал то же самое, продублировав эффект ниже, изменив также идентификатор внутри него, но это не сработало.< /p>
function addLoadEvent(e) {
var t = window.onload;
if (typeof t != "function") window.onload = e;
else window.onload = function() {
if (t) t();
e()
}
}
function regenbogen() {
if (document.getElementById) {
var e, t;
rainbow = document.getElementById("rainbow");
raintxt = rainbow.firstChild.nodeValue;
while (rainbow.childNodes.length) rainbow.removeChild(rainbow.childNodes[0]);
for (e = 0; e < raintxt.length; e++) {
t = document.createElement("span");
t.setAttribute("id", "rain" + e);
t.appendChild(document.createTextNode(raintxt.charAt(e)));
if (alink) {
t.style.cursor = "pointer";
t.onclick = function() {
top.location.href = alink
}
}
rainbow.appendChild(t)
}
rainbow = setInterval("raining()", speed)
}
}
function raining() {
var e, t;
for (e = 0; e < raintxt.length; e++) {
t = raincol[(e + raincnt) % raincol.length];
document.getElementById("rain" + e).style.color = t;
if (glow) document.getElementById("rain" + e).style.textShadow = t + " 0px 1px " + glow + "px"
}
raincnt++
}
var speed = 100;
var glow = 5;
var raincol = new Array("#ff0000", "#ff5500", "#ffaa00", "#ffff00", "#aaff00", "#55ff00", "#00ff00", "#00ff55", "#00ffaa", "#00ffff", "#00aaff", "#0055ff", "#0000ff", "#5500ff", "#aa00ff", "#ff00ff", "#ff00aa", "#ff0055");
var alink = "";
var rainbow, raintxt, raincnt = 0;
addLoadEvent(regenbogen)
Обновление: я изменил идентификатор в диапазоне на Class и заменил «document.getElementById» на «document. getElementsByClassName" внутри кода Java, и эффект больше не работал.
Я новичок в программировании, и я начал делать это для веб-сайта neocities, на котором я добавил текстовый эффект радужного свечения, но теперь я хочу, чтобы другие элементы имели тот же эффект, и всякий раз, когда я пытаюсь его скопировать, он просто применяет его к первому. Есть ли способ добиться одинакового эффекта для нескольких элементов? [code] Choco Chip Neocities [/code] Я попробовал изменить идентификатор другого текста на «rainbow2» и сделал то же самое, продублировав эффект ниже, изменив также идентификатор внутри него, но это не сработало.< /p> [code] function addLoadEvent(e) { var t = window.onload; if (typeof t != "function") window.onload = e; else window.onload = function() { if (t) t(); e() } }
function regenbogen() { if (document.getElementById) { var e, t; rainbow = document.getElementById("rainbow"); raintxt = rainbow.firstChild.nodeValue; while (rainbow.childNodes.length) rainbow.removeChild(rainbow.childNodes[0]); for (e = 0; e < raintxt.length; e++) { t = document.createElement("span"); t.setAttribute("id", "rain" + e); t.appendChild(document.createTextNode(raintxt.charAt(e))); if (alink) { t.style.cursor = "pointer"; t.onclick = function() { top.location.href = alink } } rainbow.appendChild(t) } rainbow = setInterval("raining()", speed) } }
function raining() { var e, t; for (e = 0; e < raintxt.length; e++) { t = raincol[(e + raincnt) % raincol.length]; document.getElementById("rain" + e).style.color = t; if (glow) document.getElementById("rain" + e).style.textShadow = t + " 0px 1px " + glow + "px" } raincnt++ } var speed = 100; var glow = 5; var raincol = new Array("#ff0000", "#ff5500", "#ffaa00", "#ffff00", "#aaff00", "#55ff00", "#00ff00", "#00ff55", "#00ffaa", "#00ffff", "#00aaff", "#0055ff", "#0000ff", "#5500ff", "#aa00ff", "#ff00ff", "#ff00aa", "#ff0055"); var alink = ""; var rainbow, raintxt, raincnt = 0; [/code] addLoadEvent(regenbogen) Обновление: я изменил идентификатор в диапазоне на Class и заменил «document.getElementById» на «document. getElementsByClassName" внутри кода Java, и эффект больше не работал.