Модернизация счетчика «онлайн статистики» fixed

Многие из вас уже поставили первую версию счетчика «онлайн статистики» и столкнулись с тем, что сумма процентов гостей и пользователей была не равна 100%. Но теперь данная проблема решена, так же чуть-чуть подправлен дизайн, цвета так же можно настроить очень легко, так что пользуйтесь на здоровье. 

Приступим к установке.
1. В ваш css добавляем следующий код
Code

.cross1 {padding-top:1px; display:inline-block; padding-bottom:1px; color:#fff; text-align:center; margin:0px -1px; text-shadow:0px 1px 0px rgba(0,0,0,0.30); border:1px solid #757B7F; background:#7d7d7d url('http://get-element.3dn.ru/demo/img/modernizachii_highlight_faint.png') repeat-x top; text-align:left;}  
  .cross2 {padding-top:1px; display:inline-block; padding-bottom:1px; color:#fff; text-align:center; margin:0px -1px; text-shadow:0px 1px 0px rgba(0,0,0,0.30); border:1px solid #586a7c; border-left:1px solid #646A6D; background:#61768A url('http://get-element.3dn.ru/demo/img/modernizachii_highlight_faint.png') repeat-x top; text-align:right;}  
  #icon-border {margin:0px; padding:1px; display:inline-block; border:1px solid #ccc; background:#fff;}  
  #icon-blue {display:inline-block; height:6px; width:6px; border:1px solid #586a7c; background:#607c99 url('http://get-element.3dn.ru/demo/img/modernizachii_highlight_faint.png') repeat-x top;}  
  #icon-gray {display:inline-block; height:6px; width:6px; border:1px solid #757B7F; background:#999999 url('http://get-element.3dn.ru/demo/img/modernizachii_highlight_faint.png') repeat-x top;}


2. Находим у себя на страницах код $ONLINE_COUNTER$ и заменяем его на
Code

<div style="display:none;">$ONLINE_COUNTER$</div>  
  <div style="float:right;"><span style="color:#61768a;">Пользователи</span><span id="icon-border" style="margin-left:3px;"><span id="icon-blue"></span></span></div>  
  <div><span id="icon-border" style="margin-right:3px;"><span id="icon-gray"></span></span><span style="color:#7d7d7d;">Гости сайта</span></div>  
  <div style="border:1px solid #ccc; background:#fff; padding:1px 2px; margin-top:2px;" id="stat-line" align="left"></div>  
  <div style="border:0px; padding:2px; text-align:center;" id="all-users"></div>


3. Чуть ниже ставим код скрипта
Code

<script type="text/javascript">  
  var allusers = $('.tOnline b').html();  
  var gostusers = $('.gOnline b').html();  
  var siteusers = $('.uOnline b').html();  
  var uGosti = (gostusers/allusers).toFixed(2)*100;  
  var uUsers = (siteusers/allusers).toFixed(2)*100;  
  NanUsers = function(number, one, two, five) { number = Math.abs(number); number %= 100; if (number >= 5 && number <= 20) {return five;} number %= 10; if (number == 1) {return one;} if (number >= 2 && number <= 4) {return two;} return five;}  
  if (Number(Number(uGosti).toPrecision(3)) + Number(Number(uUsers).toPrecision(3)) > '100'){if(Number(uGosti).toPrecision(3) > Number(uUsers).toPrecision(3)) {var uUsers = (siteusers/allusers).toFixed(2)*100-1;}; if(Number(uGosti).toPrecision(3) < Number(uUsers).toPrecision(3)) {var uGosti = (gostusers/allusers).toFixed(2)*100-1;};};  
  if (Number(Number(uGosti).toPrecision(3)) + Number(Number(uUsers).toPrecision(3)) < '100'){if(Number(uGosti).toPrecision(3) > Number(uUsers).toPrecision(3)) {var uUsers = (siteusers/allusers).toFixed(2)*100+1;}; if(Number(uGosti).toPrecision(3) < Number(uUsers).toPrecision(3)) {var uGosti = (gostusers/allusers).toFixed(2)*100+1;};};  
  $('#stat-line').html('<div class="cross1" style="width:'+Number(uGosti).toPrecision(3)+'%;" id="ghostss"><span style="padding-left:3px;">'+uGosti.toFixed()+'%</span></div><div class="cross2" style="width:'+Number(uUsers).toPrecision(3)+'%;" id="userss"><span style="padding-right:3px;">'+uUsers.toFixed()+'%</span></div>');  
  $('#all-users').html('Всего на сайте <b>'+allusers+'</b> '+NanUsers(allusers, 'человек', 'человека', 'человек')+'</div>');  
  </script>  
  <script>  
  if (siteusers < '1') {$('#userss').hide();};  
  if (gostusers < '1') {$('#ghostss').hide();};  
  </script>

  • FalleN

  • 993

  • 1

  • 0

Ссылки на статью:

Похожие статьи: