Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Использование переменной на форуме (https://javascript.ru/forum/misc/35210-ispolzovanie-peremennojj-na-forume.html)

Kiselboom 03.02.2013 17:55

Использование переменной на форуме
 
Здравствуйте! Решил на форуме сделать карту. Понял, что без JS тут не обойтись, стал изучать, параллельно начав писать код.
Необходимо, чтобы объект(имя посетителя) находился на определённой позиции изображения, в зависимости от расположения на форуме.
Для начала, создал сам объект. Положение объекта зависит от переменной {reg_user_row.FORUM_LOCATION}, чтобы JS мог ей использовать создал невидимый <span>. Решил проверить с помощью "document.write", как код воспринимает переменную и сразу же столкнулся с проблемой. Вне зависимости от того, где находится пользователь, код всегда выдает "На главной странице". Подскажите, что не так?
<table id="locate">
   <tr>
    <td class="ribbon">{reg_user_row.USERNAME}</td>
   </tr>
  </table>
<span id="location" hidden>{reg_user_row.FORUM_LOCATION}</span>
<script type="text/javascript">
	loc = document.getElementById('location');
	if (loc = 'В оглавлении форума') {
	 document.write("На главной странице");
	}
        else if (loc = 'Подфорум1') {
	 document.write("Просматривает Подфорум1");
	}
        else {
         document.write("Неизвестно, что и просматривает");
        }
  </script>

Deff 03.02.2013 18:05

Kiselboom,
Нун анализировать текущий адрес страницы
var addres = location.href.replace(/#.*$/,''); //.replace - обрезаем хеш

Kiselboom 03.02.2013 18:15

Почему-то мне кажется, что ошибка в самом коде. Может в операторе дело?
Если убираю hidden, то сама переменная {reg_user_row.FORUM_LOCATION} показывает правильное расположение, к примеру "Подфорум1", а вот document.write всё равно выдаёт "На главной странице".

Deff 03.02.2013 18:21

Цитата:

Сообщение от Kiselboom
Почему-то мне кажется, что ошибка в самом коде.

if (loc == 'В оглавлении форума')

<table id="locate">
   <tr>
    <td class="ribbon">{reg_user_row.USERNAME}</td>
   </tr>
  </table>
<span id="location" hidden>{reg_user_row.FORUM_LOCATION}</span>


<script type="text/javascript">
function tst () {
	loc = document.getElementById('location').innerHTML; alert(loc)
	if (loc == 'В оглавлении форума') {document.write("На главной странице");return;}
	if (loc == 'Подфорум1') {document.write("Просматривает Подфорум1");return;}
	else  {document.write("Неизвестно, что и просматривает");return;}
} tst ()
  </script>

рони 03.02.2013 18:31

Kiselboom,
Deff,
чего - то в супе нехватает
loc = document.getElementById('location');

Kiselboom 03.02.2013 18:31

No. Теперь всегда выдаёт только "Неизвестно, что и просматривает".

Kiselboom 03.02.2013 18:32

рони,
Чего же?

Deff 03.02.2013 18:38

Kiselboom,
Воткнул alert(loc)
рони, CПС - не углядел

Kiselboom 03.02.2013 18:46

Deff,
Ан нет. Теперь c alert(loc) вообще ничего не пишет и окна не появлется...

Deff 03.02.2013 18:48

Kiselboom, Значит что-то не так в PHP {reg_user_row.FORUM_LOCATION}
<table id="locate">
   <tr>
    <td class="ribbon">{reg_user_row.USERNAME}</td>
   </tr>
  </table>
<span id="location" hidden>{reg_user_row.FORUM_LOCATION}</span>


<script type="text/javascript">
function tst () {
	loc = document.getElementById('location').innerHTML; alert(loc)
	if (loc == 'В оглавлении форума') {document.write("На главной странице");return;}
	if (loc == 'Подфорум1') {document.write("Просматривает Подфорум1");return;}
	else  {document.write("Неизвестно, что и просматривает");return;}
} tst ()
  </script>


Часовой пояс GMT +3, время: 23:50.