Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 11.12.2010, 12:02
Аспирант
Отправить личное сообщение для ybiza Посмотреть профиль Найти все сообщения от ybiza
 
Регистрация: 01.11.2010
Сообщений: 40

Полоса рейтинга по состоянию просмотра странице
Как можно реализовать. Предположим у нас есть количество просмотров страниц переменная $show в php.
Как сделать так чтобы полоса заполнялось синем цветом пока количество просмотров не станет равна 1000 после этого меняла цвет на желтый и начинало заново заполнять поле до 10 000 и тд.

Я если честно не могу это написать на javascript творение может кто найдет минутку поможет в этом деле. С меня плюсы всем кто откликнется))
зы Если есть что то подобное киньте ссылку!
Ответить с цитированием
  #2 (permalink)  
Старый 11.12.2010, 12:17
Профессор
Отправить личное сообщение для Sweet Посмотреть профиль Найти все сообщения от Sweet
 
Регистрация: 16.03.2010
Сообщений: 1,618

Альтруизмом не страдаю.
Ответить с цитированием
  #3 (permalink)  
Старый 11.12.2010, 12:20
Аспирант
Отправить личное сообщение для ybiza Посмотреть профиль Найти все сообщения от ybiza
 
Регистрация: 01.11.2010
Сообщений: 40

Понятно на это я и не рассчитывал!) Скажи хотя бы логику этого действа что можно использовать в качестве блоков и.тд. Альтруизмом не страдающей ты наш!
Ответить с цитированием
  #4 (permalink)  
Старый 11.12.2010, 13:00
Профессор
Отправить личное сообщение для Sweet Посмотреть профиль Найти все сообщения от Sweet
 
Регистрация: 16.03.2010
Сообщений: 1,618

Логики хочешь? Пожалуйста (из расчета 200px - максимальная длина полоски (100%), до 1000 просмотров):
длина полоски = ( количество просмотров / 1000 ) * 200 + 'px';
Вот и вся логика. С цветом вообще не логика, а подстановка в зависимости от результата

UPD: Блок - это <div> обычно
Ответить с цитированием
  #5 (permalink)  
Старый 11.12.2010, 13:18
Аспирант
Отправить личное сообщение для ybiza Посмотреть профиль Найти все сообщения от ybiza
 
Регистрация: 01.11.2010
Сообщений: 40

Вот клево т.е. нужно к определенному элементу предположением div c id прибавлять значение width на ( количество просмотров / 1000 ) * 200 + 'px'; Я правильно понял!? Слушай а чем лучше сделать у меня пока в мыслях так
<div style="z-index:1; position: relative; width:200px; height:20px;">
                          <div style="z-index:2; position: relative; height:20px; background-color:#0033CC; width:Получаемое число при вычислении px;">
                                <div style="z-index:3; position: relative; height:20px; width:200px;">
                                Число просмотров.
                               </div>
                          </div>
                </div>

Может есть конструкция по лучше. И еще я где то на сайте видел функцию которая при клике уменьшает кнопку где ее найти и вроде что то похожее на то что мне надо, ото столько раз натыкался а теперь найти не могу)
Ответить с цитированием
  #6 (permalink)  
Старый 11.12.2010, 13:28
Профессор
Отправить личное сообщение для Sweet Посмотреть профиль Найти все сообщения от Sweet
 
Регистрация: 16.03.2010
Сообщений: 1,618

Сообщение от ybiza
а чем лучше сделать у меня пока в мыслях так
Что?
Нормальная конструкция получилась.
Вот посмотри
Ответить с цитированием
  #7 (permalink)  
Старый 11.12.2010, 13:58
Аспирант
Отправить личное сообщение для ybiza Посмотреть профиль Найти все сообщения от ybiza
 
Регистрация: 01.11.2010
Сообщений: 40

Слушай поправь почему то не работает хотя по моей задумке должно) если не трудно конечно. то что ты посоветовал конечно интересно но пока не для меня я в этом слабак)
Вот конструктор:

<script>
					  
var show = <?php $this->article->hits; ?>
if (show < 1000 ) {
document.getElementById(reit).style.width = ( show / 1000 ) * 200 + 'px'; 
} else {
document.getElementById(reit).style.width = ( show / 10000) * 200 + 'px';
}    					  
</script>
                
<div style="z-index:1; position: relative; width:200px; height:20px;">
      <div style="z-index:2; position: relative; height:20px; background-color:#0033CC;" id="reit">
             <div style="z-index:3; position: relative; height:20px; width:200px;">
                                Число просмотров.
                               </div>
                          </div>
                </div>

Только не смейся) Сильно если что не так!
Ответить с цитированием
  #8 (permalink)  
Старый 11.12.2010, 14:10
Профессор
Отправить личное сообщение для Sweet Посмотреть профиль Найти все сообщения от Sweet
 
Регистрация: 16.03.2010
Сообщений: 1,618

Помести скрипт под дивы, либо используй window.onload, потому что ты пытаешься обратиться к элементу (getElementById), когда его еще нет в DOM'е
Ответить с цитированием
  #9 (permalink)  
Старый 11.12.2010, 14:12
Профессор
Отправить личное сообщение для Sweet Посмотреть профиль Найти все сообщения от Sweet
 
Регистрация: 16.03.2010
Сообщений: 1,618

Да, и еще:
getElementById(reit)
переменной reit нет. Нужно же
getElementById('reit')
Ответить с цитированием
  #10 (permalink)  
Старый 11.12.2010, 14:14
Аспирант
Отправить личное сообщение для ybiza Посмотреть профиль Найти все сообщения от ybiza
 
Регистрация: 01.11.2010
Сообщений: 40

Чет вообще не помогает! все перепробовал.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск