0
Другие записи за это число:
2010/10/29_01 - гении программирования
<< предыдущая заметкаследующая заметка >>
29 октября 2010
победил подгрузку комментариев с якорем

Если в заметке установлена опция «комментарии показывать: кнопку», то простыня комментариев при загрузке страницы не отображается, только кнопка:
http://lleo.aha.ru/dnevnik/2010/09/06.html
Но если посетитель открывает ссылку с якорем на конкретный комментарий (эту ссылку можно взять, наведя мышку на дату комментария в его правом углу):
http://lleo.aha.ru/dnevnik/2010/09/06.html#67936
то теперь движок распознает это, сам подгружает простыню комментариев и пинает браузер туда, к нужному.

В общем-то ничего сложного, но потребовалось кое-что модернизировать неочевидное в разных местах. Ведь якорь из php не виден — браузер его не передает серверу, только из js можно его выцепить.

UPD:

Сделал возможность разрешить удалять собственные комментарии — переменная в конфиге появилась. Ну, мало ли, кто захочет. Я так считаю: сморозил глупость — терпи.

Как мы помним, отредактировать собственный комментарий посетитель (если он не админ) может только в течение $time_edit_sec (у меня — 15 минут). Сделал сейчас красивую тикалку секунд. Когда время истечет — пропадает кнопка отправки и выдается сообщение. Сама форма не закрывается — мало ли, кто захочет себе в блокнотик свой непринятый шедевр сохранить.

<< предыдущая заметка следующая заметка >>
пожаловаться на эту публикацию администрации портала
архив понравившихся мне ссылок
Оставить комментарий
Windows IE
0
0
D.iK.iJ
Ой, а как вы его вытащили?
Linux Firefox
 Москва
0
0
LLeo
Этот человек не загрузил свой юзерпик, и я подобрал ему этот. Человек, пишущий такое, должен именно так выглядеть, верно?
Кого вытащил?
Windows IE
0
0
D.iK.iJ
Ну, якорь при помощи Java script ?
Linux Firefox
 Москва
0
0
LLeo
Этот человек не загрузил свой юзерпик, и я подобрал ему этот. Человек, пишущий такое, должен именно так выглядеть, верно?
У браузера есть переменная document.location.href - сервер о ней не знает, но JS ее видит целиком. Осталось только выяснить, не заканчивается ли она номером после решетки: #123, если да - то запустить процедуру подгрузки комментариев, а затем еще раз присвоить document.location.href ее же собственное значение, чтобы браузер сделал прыжок.
Windows Opera
0
0
Tiger
Этот человек не загрузил свой юзерпик, и я подобрал ему этот. Человек, пишущий такое, должен именно так выглядеть, верно?
Эээ. location.hash же.
Nokia-E90 Safari
 Москва
0
0
Леонит Каганофф
В каком смысле? Что это?
Windows Opera
0
0
Tiger
Этот человек не загрузил свой юзерпик, и я подобрал ему этот. Человек, пишущий такое, должен именно так выглядеть, верно?

javascript:prompt('location.hash',location.hash);void(0);
Linux Firefox
 Москва
0
0
LLeo
Этот человек не загрузил свой юзерпик, и я подобрал ему этот. Человек, пишущий такое, должен именно так выглядеть, верно?
Э-э-э... пытаюсь понять. И как я должен поступить-то?
Убедиться каким-то образом, что это опера, и... что-то сделать с location.hash?
Windows Opera
0
0
Tiger
Этот человек не загрузил свой юзерпик, и я подобрал ему этот. Человек, пишущий такое, должен именно так выглядеть, верно?
В этой ветке я про var c=document.location.href; if(1*c.replace(/^.*?#(\\d+)$/g,'$1')) говорил - можно же сразу к location.hash обращаться.
А вот как включить прокрутку в опере - пока не знаю.
Linux Firefox
 Москва
0
0
LLeo
Этот человек не загрузил свой юзерпик, и я подобрал ему этот. Человек, пишущий такое, должен именно так выглядеть, верно?
Ну, то есть, как в опере включить прокрутку, мы все равно не знаем? Тогда какой смысл менять что-то?
Linux Safari Chrome
0
0
vvzvlad
Этот человек не загрузил свой юзерпик, и я подобрал ему этот. Человек, пишущий такое, должен именно так выглядеть, верно?
попробуем..
Linux Safari Chrome
0
0
vvzvlad
Этот человек не загрузил свой юзерпик, и я подобрал ему этот. Человек, пишущий такое, должен именно так выглядеть, верно?
так, глюк?
Linux Safari Chrome
0
0
vvzvlad
Этот человек не загрузил свой юзерпик, и я подобрал ему этот. Человек, пишущий такое, должен именно так выглядеть, верно?
все, понял. глюк небольшой, но заметный. при отправке комментария(страница же не перегружается) новый комментарий встает перед предыдущим.
сохраняется до перезагрузки страницы

вот.

верхние комменты можно удалить
Linux Firefox
 Москва
0
0
LLeo
Этот человек не загрузил свой юзерпик, и я подобрал ему этот. Человек, пишущий такое, должен именно так выглядеть, верно?
Ну... Оно так всегда было. Не знаю пока, как с этим бороться, да и надо ли?
Linux Safari Chrome
0
0
vvzvlad
Этот человек не загрузил свой юзерпик, и я подобрал ему этот. Человек, пишущий такое, должен именно так выглядеть, верно?
да не было. заметный глюк же, как его можно не увидеть?
Linux Firefox
 Москва
0
0
LLeo
Этот человек не загрузил свой юзерпик, и я подобрал ему этот. Человек, пишущий такое, должен именно так выглядеть, верно?
Было, было. Я там не правил ничего.
Windows Opera
0
0
vedmezhatko
Что-то у меня Опера не хочет скакать к комментарию (но простыню разворачивает).
Nokia-E90 Safari
 Москва
0
0
Леонит Каганофф
Думаю, если кэш обновить, заработает. Там скрипты обновились.
Windows Opera
0
0
vedmezhatko
Неа, не помогло. :(
Windows Firefox
0
0
Артем Павлов
Это же, вроде, у Оперы глюк такой - она не реагирует на смену location.href.
Windows Opera
0
0
Tiger
Этот человек не загрузил свой юзерпик, и я подобрал ему этот. Человек, пишущий такое, должен именно так выглядеть, верно?
А вот был бы жквери!..
Кстати, это фича. Наверно.
Nokia-E90 Safari
 Москва
0
0
Леонит Каганофф
А что жквери? Приструнит оперу?
Windows Opera
0
0
Tiger
Этот человек не загрузил свой юзерпик, и я подобрал ему этот. Человек, пишущий такое, должен именно так выглядеть, верно?
Одной строчкой включит плавненькую прокрутку окна во всех браузерах.
Windows Opera
0
0
Tiger
Этот человек не загрузил свой юзерпик, и я подобрал ему этот. Человек, пишущий такое, должен именно так выглядеть, верно?
Ручное тыканье по адресной строке работает, javascript:location.href=location.href;void(0); тоже. А вот автоматика почему-то нет.
Linux Safari Chrome
0
0
tjoker
Этот человек не загрузил свой юзерпик, и я подобрал ему этот. Человек, пишущий такое, должен именно так выглядеть, верно?
отсчет времени вижу, а удаления не вижу. странно
Linux Firefox
 Москва
0
0
LLeo
Этот человек не загрузил свой юзерпик, и я подобрал ему этот. Человек, пишущий такое, должен именно так выглядеть, верно?
А что происходит, когда доходит до 00:00?

всего комментариев: 26

<< предыдущая заметка следующая заметка >>