рони, значит 0.
|
monsterito,
<!DOCTYPE html>
<html>
<head>
<title>Untitled</title>
<meta charset="utf-8">
</head>
<body>
<table rules="all" cellspacing="10" cellpadding="10" style="margin-top:20px; border: 1px solid rgba(81, 71, 71, 0.24);">
<tbody>
<tr align="center">
<td width="120px" height="110px">
<p class="pifagor-char">111</p>
<p class="stp">характер,</p>
<p class="stp">сила воли</p>
</td>
<td width="120px" height="110px">
<p class="pifagor-char">22</p>
<p class="stp">энергетика,</p>
<p class="stp">харизма</p>
</td>
<td width="120px" height="110px">
<p class="pifagor-char">333</p>
<p class="stp">познание,</p>
<p class="stp">творчество</p>
</td>
<td width="120px" height="110px">
<p class="pifagor-char"></p>
</td>
</tr>
<tr align="center">
<td width="120px" height="110px">
<p class="pifagor-char">—</p>
<p class="stp">здоровье,</p>
<p class="stp">красота</p>
</td>
<td width="120px" height="110px">
<p class="pifagor-char">5</p>
<p class="stp">логика,</p>
<p class="stp">интуиция</p>
</td>
<td width="120px" height="110px">
<p class="pifagor-char">—</p>
<p class="stp">трудолюбие,</p>
<p class="stp">мастерство</p>
</td>
<td width="120px" height="110px">
<p class="pifagor-char"></p>
</td>
</tr>
<tr align="center">
<td width="120px" height="110px">
<p class="pifagor-char">—</p>
<p class="stp">удача,</p>
<p class="stp">везение</p>
</td>
<td width="120px" height="110px">
<p class="pifagor-char">8</p>
<p class="stp">чувство</p>
<p class="stp">долга</p>
</td>
<td width="120px" height="110px">
<p class="pifagor-char">99</p>
<p class="stp">память,</p>
<p class="stp">ум</p>
</td>
<td width="120px" height="110px">
<p class="pifagor-char">-</p>
</td>
</tr>
<tr align="center">
<td width="120px" height="110px">
<p class="pifagor-char">10</p>
<p class="stp"></p>
<p class="stp"></p>
</td>
<td width="120px" height="110px">
<p class="pifagor-char">—</p>
<p class="stp"></p>
<p class="stp"></p>
</td>
<td width="120px" height="110px">
<p class="pifagor-char">—</p>
<p class="stp"></p>
<p class="stp"></p>
</td>
<td width="120px" height="110px">
<p class="pifagor-char"></p>
</td>
</tr>
</tbody>
</table>
<table>
<script>
(function() {
function d(b) {
return [].reduce.call(b + "", function(a, b) {
return a + +b
}, 0)
}
[].forEach.call(document.querySelectorAll("tr"), function(b) {
var a = [].slice.call(b.querySelectorAll(".pifagor-char"));
b = a.pop();
a = a.reduce(function(a, b) {
var c = +b.innerHTML || 0;
12 < c && (c = d(c));
return a + c
}, 0);
b.innerHTML = 12 < a ? d(a) : a
})
})();
</script>
</table>
</body>
</html>
|
рони, спасибо, но у меня-что не работает. У меня эта сумма должна складываться после нажатия по кнопке, а не изначально. Изначально там по нулям. Я вешаю событие на id, но ничего не считает и не показывает
|
Цитата:
|
рони, прошу https://jsfiddle.net/u3fk50uu/1/
|
monsterito,
ой а у меня работает :lol:https://jsfiddle.net/u3fk50uu/3/ и даже так работает :lol:
<!DOCTYPE html>
<html>
<head>
<title>Untitled</title>
<meta charset="utf-8">
</head>
<body>
<table rules="all" cellspacing="10" cellpadding="10" style="margin-top:20px; border: 1px solid rgba(81, 71, 71, 0.24);">
<tbody>
<tr align="center">
<td width="120px" height="110px">
<p class="pifagor-char">111</p>
<p class="stp">характер,</p>
<p class="stp">сила воли</p>
</td>
<td width="120px" height="110px">
<p class="pifagor-char">22</p>
<p class="stp">энергетика,</p>
<p class="stp">харизма</p>
</td>
<td width="120px" height="110px">
<p class="pifagor-char">333</p>
<p class="stp">познание,</p>
<p class="stp">творчество</p>
</td>
<td width="120px" height="110px">
<p class="pifagor-char"></p>
</td>
</tr>
<tr align="center">
<td width="120px" height="110px">
<p class="pifagor-char">—</p>
<p class="stp">здоровье,</p>
<p class="stp">красота</p>
</td>
<td width="120px" height="110px">
<p class="pifagor-char">5</p>
<p class="stp">логика,</p>
<p class="stp">интуиция</p>
</td>
<td width="120px" height="110px">
<p class="pifagor-char">—</p>
<p class="stp">трудолюбие,</p>
<p class="stp">мастерство</p>
</td>
<td width="120px" height="110px">
<p class="pifagor-char"></p>
</td>
</tr>
<tr align="center">
<td width="120px" height="110px">
<p class="pifagor-char">—</p>
<p class="stp">удача,</p>
<p class="stp">везение</p>
</td>
<td width="120px" height="110px">
<p class="pifagor-char">8</p>
<p class="stp">чувство</p>
<p class="stp">долга</p>
</td>
<td width="120px" height="110px">
<p class="pifagor-char">99</p>
<p class="stp">память,</p>
<p class="stp">ум</p>
</td>
<td width="120px" height="110px">
<p class="pifagor-char">-</p>
</td>
</tr>
<tr align="center">
<td width="120px" height="110px">
<p class="pifagor-char">10</p>
<p class="stp"></p>
<p class="stp"></p>
</td>
<td width="120px" height="110px">
<p class="pifagor-char">—</p>
<p class="stp"></p>
<p class="stp"></p>
</td>
<td width="120px" height="110px">
<p class="pifagor-char">—</p>
<p class="stp"></p>
<p class="stp"></p>
</td>
<td width="120px" height="110px">
<p class="pifagor-char"></p>
</td>
</tr>
</tbody>
</table>
<table>
<input id="tuk" name="" type="button" value="go">
<script>
(function() {
function d(b) {
return [].reduce.call(b + "", function(a, b) {
return a + +b
}, 0)
}
window.addEventListener('DOMContentLoaded', function() {
document.querySelector("#tuk").addEventListener("click", function() {
[].forEach.call(document.querySelectorAll("tr"), function(b) {
var a = [].slice.call(b.querySelectorAll(".pifagor-char"));
b = a.pop();
a = a.reduce(function(a, b) {
var c = +b.innerHTML || 0;
12 < c && (c = d(c));
return a + c
}, 0);
b.innerHTML = 12 < a ? d(a) : a
})
});
});
})();
</script>
</table>
</body>
</html>
|
рони, хм.... но почему у меня не работает)
Так, я вроде понял почему не работает. Это из-за кода, который находится в return в моем коде. https://jsfiddle.net/u3fk50uu/4/ - посмотрите всего. Да, он очень плохой по виду, но помогите разобраться почему не работает |
monsterito,
потому что нужна готовность страницы и загруженная библиотека jquery, либо вариант выше без jquery. |
рони, посмотрите выше. Обновил. Была загружена библиотека на локали. Не работало. Почему? Выше написал
|
monsterito,
вы убрали из последней ячейки всё куда вставлялся результат. поэтому так
$("#go-pif").click(function(){
$("#out").html(mainFunction());
function d(b) {
return [].reduce.call(b + "", function(a, b) {
return a + +b
}, 0)
}
[].forEach.call(document.querySelectorAll("tr"), function(b) {
var a = [].slice.call(b.querySelectorAll(".pifagor-char"));
b = b.querySelector("td:last-child");
a = a.reduce(function(a, b) {
var c = +b.innerHTML || 0;
12 < c && (c = d(c));
return a + c
}, 0);
b.innerHTML = 12 < a ? d(a) : a
});
});
|
| Часовой пояс GMT +3, время: 22:54. |