Кнопка «Like» вместо рейтинга для uCoz


Кнопка «Like» вместо рейтинга для uCoz

4404
9.4 из 10
Проголосовало: 25






Весьма интересный вариант рейтинга для uCoz. Кнопка «Like» будет отображаться вместо рейтинга звездочками на Вашем сайте uCoz. Вы можете заменить изображение с большим поднятым вверх пальцем на свое (например, на сердечко или звездочку, прицел или еще что-то в этом роде). При первом нажатии на «Like» цифра просто увеличится на счетчике, никаких всплывающих окон не появится, при повторном нажатии появится окно, в котором будет написано, что Вы уже оценивали этот материал, и число больше не увеличится.

Установка

Панель управления » Управление дизайном

Вставьте этот скрипт, например, в Нижнюю часть сайта. Главное, чтобы он был только один раз на странице:

Code
<script type="text/javascript">  
  likePlus = function (c, d, f, g) {  
  if (typeof d == 'undefined' || typeof c == 'undefined' || (c != 1 && c != -1)) return false;  
  c += 2;  
  if (!f) f = location.pathname.match(/[^\\\/]+/i) + '';  
  if (!f) return false;  
  var h = $('#rate_' + d);  
  g = $.extend({  
  'before': function (a) {  
  },  
  'after-success': function (a, b) {  
  document.getElementById('frs2' + d).innerText++  
  a.html(b).addClass(b > 0 ? 'positiveRate' : (b == 0 ? 'nullRate' : 'negativeRate'));  
  },  
  'after-error': function (a) {  
  try {eval(a)} catch (e) {}  
  }  
  }, g || {});  
  g.before(h);  
  $.post('/' + f + '/', {'a': '65', 'id': d, 'mark': c, 'mod': f, 'ajax': '2'}, function (a) {  
  a = $('cmd:first', a).text();  
  var b = a.match(/Рейтинг:\s*([\d.]+)\/(\d+)/i);  
  if (!b) return g['after-error'](a);  
  b = Math.round(b[1] * b[2]) - 2 * b[2];  
  g['after-success'](h, b)  
  })  
  }  
  function getClass(nameid, nameclass) {  
  document.getElementById(nameid).className=nameclass  
  }  
  </script>


Следующий код Вы можете вставить туда же, а можно выдернуть все стили селекторов и вставить в свой файл CSS:

Code
<style type="text/css">  
  .likeplus {font-size:1pt;background:url('http://webo4ka.ru/Ucoz5/58127939Like_vmesto_mne_nravitci.png') top;width:13px;height:12px;overflow:hidden;cursor:pointer;margin-right:4px;margin-top:0px}  
  .likeplus_hover {font-size:1pt;background:url('http://webo4ka.ru/Ucoz5/58127939Like_vmesto_mne_nravitci.png') bottom;width:13px;height:12px;overflow:hidden;cursor:pointer;margin-right:4px;margin-top:0px}  
  .like2 {font-size:8pt;font-weight:bold;color:#111C49;}  
  .likex {font-size:8pt;font-weight:bold;color:#223276;}  
  </style>


Изображение http://webo4ka.ru/Ucoz5/58127939Like_vmesto_mne_nravitci.png можно заменить на свое.

Вот код самой кнопки. Вставлять нужно в вид материалов нужного модуля или на страницу материала и комментариев к нему. Для каталога статей в коде ниже написано publ. Чтобы использовать код для новостей сайта, например, заменить publ на news.

Code
<?if($RATING$)?>  
  <div onclick="likePlus(1,$ID$,'publ');return false" style="cursor:pointer;height:16px;" onmouseover="getClass('hr2$ID$','likeplus_hover');getClass('frs2$ID$','like2')" onmouseout="getClass('hr2$ID$','likeplus');getClass('frs2$ID$','likex')">  
  <table cellspacing="0" cellpadding="0"><tr><td><div id="hr2$ID$" class="likeplus"> </div></td><td><div class="likex" id="frs2$ID$">$RATED$</div></td></tr></table>  
  </div>  
  <?endif?>
Автор публикации: Загрузка
Загрузка
Вовчик, это его n материал
  • Всего комментариев: 8

GOD
0
GOD написал: Написано 17 Октября 2013 в 01:52
Комментарий №8
Отличный и очень нужный скрипт, если можно, помоги пожалуйста, как сделать, что-бы после оценки он писал не NaN а например "Спасибо" или "Рад что понравилось". Буду очень благодарен за помощь!

Anton_Kurilov
0
Anton_Kurilov написал: Написано 26 Декабря 2012 в 10:21
Комментарий №6
как сделать что работало в комментариях? На что менять publ?

Вовчик
0
Вовчик написал: Написано 28 Декабря 2012 в 08:04
Комментарий №7
Ни на что...

wacko блин в комментариях и есть такой вид оценки, а если ты хочешь что бы ставили только лайки а не дизлайки, то убери дизлайк и всё...

Master
0
Master написал: Написано 05 Июля 2012 в 22:33
Комментарий №5
Отлично! Спасибо!

Maestro
0
Maestro написал: Написано 04 Января 2012 в 16:34
Комментарий №4
Супер!

BLAzER
+3
BLAzER написал: Написано 04 Января 2012 в 10:01
Комментарий №3

doc74
0
doc74 написал: Написано 04 Января 2012 в 00:10
Комментарий №2
Cool, автору огромное спасибо!

zenitovic
+2
zenitovic написал: Написано 03 Января 2012 в 23:01
Комментарий №1
Вот это реальная вещь! Автору респект! happy

  • Оставить комментарий:
Добавлять комментарии могут только зарегистрированные пользователи.
Регистрация | Вход
Меню сайта
Категории
Для помощи создания сайта uCoz 25
Скрипты и модификации для Ucoz 2113
Шаблоны форумов Ucoz 28
Шаблоны сайтов Ucoz 431
Авторство Webo4ki 309
php скрипты для ucoz 57
Графика для uCoz 40
Мини-чат
Последние комментарии
  • sasha2016tv написал:
  • Хороший скрипт
    Ох. Вижу, что обсуждение очень старое. Но!
    На других CMS так же будет все это реализовано. На нормальных CMS.
    Такое решение может подойти лишь для landing сайтов. Но и то, не думаю, что там кто то заморачивается в написании какого либо контроллера генерирования шаблона и используют прямо в лоб чистый HTML, поэтому и будут для каждой страницы свои блоки делать.

    Поэтому лучше тут все же дописать решение именно для ucoz без загрузки этих лишних блоков на странице. Ведь используя условные операторы этот код даже не будет прогружаться на странице. (Лол. Это ж доли секунд загрузки...) И что? Но давайте делать оптимальнее
    Моё авторство:)
  • 1488 написал:
  • 1488 написал:
  • Смысл исходный код? он возвращает после обновление страницы на то положение которое было... или как?
  • 1488 написал:
  • как поставить галки как скрине?
    а то невозможно поставить...
    Последние темы
    Опрос
    229
    А
    Р
    Что произойдёт: $("#...
    Статистика
    Анализ интернет сайта
    0
    онлайн
    0
    наших
    0
    чужих
    Онлайн всего: 3
    Гостей: 3
    Пользователей: 0
    0
    Сегодня были
    Топ пользователей: