Доброго времени суток.
Вот такой написал код. Т.к. в JS я не силён и действовал методом тыка, то наверняка код можно оптимизировать.
if (window.location.hash) {
var urlHash = window.location.hash;
var urlraw = encodeURIComponent(window.location.href);
var urlc = urlraw.split("%23")[0];
if(urlHash.indexOf('#comment-') === 0 && readCookie('commentadd') === urlc ) {
alert("Комментарий оставлен");
}
}
Логика скрипта простая - если отображена страница с "якорем" на коммент ( пример xxx.xx/page.html#comment-12 ) и ещё имеется кука (имя - commentadd; значение - ссылка на страницу (без якоря, поэтому и идёт "обрезка" в коде, далее идёт сравнение)), то выводится сообщение "Комментарий оставлен". А то из-за кеширующего плагина часто отображается страница без добавленного в очередь на модерацию комментария и посетители повторно отправляют свои комментарии.
Я вот думаю, может вообще без отсечения? Просто сравнивать начало, не заморачиваясь над отсечением. Для примера:
https%3A%2F%2Fxxx.xx%2F123.html
- ссылка в куки
https%3A%2F%2Fxxx.xx%2F123.html%23comment-12
- ссылка, определяемая через JS (до отсечения)
Вот только не нашёл примера, как сравнивать начальную строку, у которой окончание может быть различным.