Ещё один набросок. Он позволит строить ветки комментариев. вроде нуждается в доработке
Для того, чтобы начать или продолжить ветку, пользователь должен будет указать в начале своего поста id того поста, к которому хочет обратиться в таком виде:
>100500
Перенос строки в данном случае важен, как и нахождение номера в начале сообщния.
Указание своего или несуществующего номера ничего не даст. Номер поста везде заменяется.
Сделал, ибо привык к друпальным веточкам ><
Проблему вижу одну: переход между страницами. Если пользователь начал новую и обращается к посту на предыдущей - ожидаемого сдвига не будет.
Также скрипт потребует поправок в стиле, касательно нижней границы поста.
Номера постов заменятся на ссылки, отправляющие в форму ответа id поста.
Стиль
<style>
.post {border-bottom: none 0px transparent !important;}
.ment {margin-left: 4%; margin-top: .3em;}
.ment .pa-reg, .ment .pa-posts, .ment .pa-respect, .ment .pa-positive, .ment .pa-fld1, .ment .pa-ip, .ment .pa-time-visit, .ment .pa-title, .ment .post-sig, .ment .pa-online {display:none;}
.ment .pa-avatar img {max-width: 10em; max-height:6em; width:auto; height:auto;}
.ment, .post {min-width: 46em;}
</style>Скрипт вниз
<script type="text/javascript">
post = document.getElementsByClassName('post-content')
f = -1
while (post[++f]) {
xnumb = post[f].firstElementChild.firstChild.length - 3
pnum = post[f].firstElementChild.firstChild.textContent.substr(2, xnumb)
pnum = "p"+pnum
if (ppost = document.getElementById(pnum)) {
tpost = post[f].parentNode.parentNode.parentNode.parentNode
idp = tpost.id
if (idp !== ppost.id && post[f].firstElementChild.firstChild.textContent.substr(0, 2) == "[>" && post[f].firstElementChild.firstChild.textContent.substr(post[f].firstElementChild.firstChild.length - 1) == "]") {
post[f].firstElementChild.firstChild.textContent = ''
post[f].firstElementChild.removeChild(post[f].firstElementChild.firstElementChild)
htp = tpost.innerHTML
tpost.parentNode.removeChild(tpost)
document.getElementById(pnum).innerHTML += '<div id="'+idp+'" class="ment">'+htp+'</div>'
}
}
}
if (GroupID !== 3) {
plinks = document.getElementsByClassName('post-links')
f = -1
while (plinks[++f]) {plinks[f].firstElementChild.innerHTML += '<li><a href="#post-form" title="Оставить комментарий к этому посту"onclick="insert(\'[>'+plinks[f].parentNode.parentNode.id.substr(1)+']\');obje=this; nowanswer();">Комментировать</a></li>'
}
}
</script>Отредактировано Kven (Сб, 8 Янв 2011 16:33:37)
А как далеко сообщения могут сдвигаться вправо?

