Хорошо, я внес некоторые изменения, исправил некоторые проблемы, но теперь это не происходит, хотя все буквы, некоторые из букв становятся видимыми, а затем сценарий останавливается. Кроме того, как я могу заставить буквы затухать? Я думал, что у меня есть это, но сценарий не останавливается по какой-то причине, и вы не можете видеть исчезновение.
<script type="text/javascript" >
//alert("Script Loaded");
var $TotalLetters = 16,
$SwappedLets = 0,
$L1 = false,
$L2 = false,
$L3 = false,
$L4 = false,
$L5 = false,
$L6 = false,
$L7 = false,
$L8 = false,
$L9 = false,
$L10 = false,
$L11 = false,
$L12 = false,
$L13 = false,
$L14 = false,
$L15 = false,
$L16 = false,
$RanNum = 0,
$Holderval = 0;
window.onload = function DOL() {
DoOnLoad()
}
function DoOnLoad() {
//alert("DoOnLoad");
/* Change the opacity of every letter randomly,
CAN CHANGE IN SMALL TAG */
if ($SwappedLets <= $TotalLetters + 1) {
$RanNum = Math.floor(Math.random()*17);
//alert(window["$L" + $RanNum]);
if (window["$L" + $RanNum] == false) {
window["$L" + $RanNum] = true;
OPIncre($RanNum);
}
}
}
function OPIncre(RN) {
if (document.getElementById("tL" + RN).style.opacity <= 1) {
document.getElementById("tL" + RN).style.opacity = $Holderval + 0.001;
$Holderval = $Holderval + 0.001;
window.setTimeout(OPIncre(RN),600);
}
else {
$SwappedLets = $SwappedLets + 1;
$Holderval = 0;
window.setTimeout(DoOnLoad,500);
}
}
</script>
----OLD:
Я новичок в Javascript, и у меня возникли проблемы с тем, что скрипт случайно меняет непрозрачность элемента html. Непрозрачность элементов по умолчанию равна 0 в css. Я попытался оглядеться и еще не нашел решения. Я не ошибаюсь в консоли ошибок Javascript Firefox. Есть ли что-то, что явно неправильно?
<script type="text/javascript" >
/*alert("Script Loaded");*/
var $TotalLetters = 16,
$SwappedLets = 0,
$L1 = false,
$L2 = false,
$L3 = false,
$L4 = false,
$L5 = false,
$L6 = false,
$L7 = false,
$L8 = false,
$L9 = false,
$L10 = false,
$L11 = false,
$L12 = false,
$L13 = false,
$L14 = false,
$L15 = false,
$L16 = false,
$RanNum = 0;
window.onload = function DOL() {
DoOnLoad()
}
function DoOnLoad() {
/*alert("DoOnLoad");*/
/* Change the opacity of every letter randomly,
CAN CHANGE IN SMALL TAG */
if ($SwappedLets <= $TotalLetters + 1) {
$RanNum = Math.floor(Math.random()*17);
/*alert(window["$L" + $RanNum]);*/
if (window["$L" + $RanNum] == false) {
window["$L" + $RanNum] = true;
OPIncre($RanNum);
}
}
}
function OPIncre(RN) {
while (document.getElementById("tL" + RN).style.Opacity <= 1) {
document.getElementById("tL" + RN).style.Opacity = document.getElementById("tL" + RN).style.Opacity + 0.1;
}
$SwappedLets = $SwappedLets + 1;
window.setTimeout(DoOnLoad,500);
}
</script>
Не уверен, какие типы элементов "tL", но при условии, что они имеют тип <p>
следующий скрипт должен сделать трюк:
var $elements;
window.onload = function DOL() {
// Get all elements
$elements = $("p[id^='tL']");
// Loop through all of them
$elements.each(function(i, e) {
e.style.opacity = Math.random() + 0.17;
});
}
Обратите внимание, что я использую jQuery здесь. Поскольку вы используете обозначение dollor для переменных, я предполагаю, что вы его используете.