bes Так с алертом и у меня работает:)
рони $(window).load - картины не меняет. С алертом работает. Без алерта ячейки не красятся. Сейчас проверю Вашу функцию. |
Цитата:
<script type="text/javascript" src="http://code.jquery.com/jquery-1.11.1.min.js"></script>
<style>
td {
border: solid 1px;
}
.active {
background: green;
}
</style>
<div class="table"></div>
<script>
$(document).ready(function() {
var str = "<table id='my_table'><tr>";
for (var i = 1; i < 28; i++) {
str += "<td>" + i + "</td>";
}
str += "<td>1</td></tr></table>";
document.querySelector(".table").innerHTML = str;
//alert ('Красим ячейки!');
$('#my_table td:nth-child(28)').each(function () {
if(this.innerHTML == '1') {
$(this).closest("tr").addClass("active");
}
});
});
</script>
|
Как это в отпуске???
Все дело в том что ячейки добавляются с помощью JavaScript но уже после того как выполняется код который раскрашивает ячейки. алерт просто приостанавливает выполнение скрипта и ячейки успевают появится в документе. |
bes, Вы правы у Вас работает и у меня Ваш пример работает. И с алертом и без. А мой не работает. Попробую его локализовать.
|
Цитата:
|
так, естественно, не работает, но и ячейки раньше времени не появляются
<script type="text/javascript" src="http://code.jquery.com/jquery-1.11.1.min.js"></script>
<style>
td {
border: solid 1px;
}
.active {
background: green;
}
</style>
<div class="table"></div>
<script>
$(document).ready(function() {
alert ('Красим ячейки!');
$('#my_table td:nth-child(28)').each(function () {
if(this.innerHTML == '1') {
$(this).closest("tr").addClass("active");
}
});
var str = "<table id='my_table'><tr>";
for (var i = 1; i < 28; i++) {
str += "<td>" + i + "</td>";
}
str += "<td>1</td></tr></table>";
document.querySelector(".table").innerHTML = str;
});
</script>
|
Цитата:
|
Я думаю заменить alert на setTimeout. Я о том думаю?
|
bes ошибок в консоли нет
|
выложи на http://jsfiddle.net/ или http://learn.javascript.ru/play
|
| Часовой пояс GMT +3, время: 12:17. |