Onclick (javascript) на пункт меню (index.php?Itemid=)

0 Пользователей и 1 Гость просматривают эту тему.
  • 5 Ответов
  • 1143 Просмотров
*

ainar9

  • Новичок
  • *
  • 2
  • 0
Всем привет!

Задание:
Есть <div> блок, который нужно сделать как ссылку.
Почитал много всего, и нашёл простой ответ, но возникла небольшая проблемка

Пример:

<a href="index.php?Itemid=218">Ссылка на скрытый пункт меню</a> - всё работает на ура, и ссылка отображается красиво. Но этим методом нельзя весь <div> сделать ссылкой
<div onclick="parent.location='index.php?Itemid=218'" style="cursor:pointer">сдесь картинки и текст</div> - этот вариант ссылается на отсутствие страницы (если полный путь указать, то всё работает, а если домен поменяется, предётся всё менять)

Помогите пожалуйста, как решить данную проблему.
Спасибо.



*

robert

  • Профи
  • ********
  • 4006
  • 371
Так пробовали?
Код: php-brief
<div onclick="parent.location='<? echo JRoute::_('index.php?Itemid=218');?>'" style="cursor:pointer">сдесь картинки и текст</div>

P.S. Пропустил кавычки.
« Последнее редактирование: 07.03.2015, 00:45:28 от robert »
  • Не будь паразитом, сделай что-нибудь самостоятельно!
  • В личке и по Skype не даю советов.

*

ainar9

  • Новичок
  • *
  • 2
  • 0
Так пробовали?
Код: php-brief
parent.location=<? echo JRoute::_('index.php?Itemid=218');?>

Попробовал, но к сожалению нечего не получилось.
Я думал об JRoute, эта идея может быть и правильная, но onclick отказывается принимать этот формат.
Есть <div>, но по клику на нём нечего не происходит. Как то формат Неправильно указан.
Я с javascript вообще не знаком, только с помощью Google.

Попробую поискать, как правильно записать JRoute в Onclick

*

robert

  • Профи
  • ********
  • 4006
  • 371
onclick отказывается принимать этот формат.
Попробую поискать, как правильно записать JRoute в Onclick
Неверно. JRoute всего лишь приводит ссылку в нужный вид, не более того. JS к нему не имеет никакого отношения. Скорее всего, баг у вас в другом месте. Ведь как обычно бывает: новичок думает, что нашел проблемный участок кода  и выкладывает именно его, потом уже общими усилиями уговаривают его (ТС) привести остальное.
« Последнее редактирование: 07.03.2015, 00:37:42 от robert »
  • Не будь паразитом, сделай что-нибудь самостоятельно!
  • В личке и по Skype не даю советов.

*

zomby6888

  • Живу я здесь
  • ******
  • 1484
  • 167
Так вобще писать неверно! parent.location это родительский объект window в контексте объекта window. В ie контекст исполнения по умолчанию - это объект document. Поэтому это даже в ie не будет работать. Правильно написать так:

Код: html4strict
<div onclick="window.location.href='...'"></div>

C JRoute должно работать но этот метод служит для формирования ЧПУ, там куча побочных методов исполняется. Лучше всего написать так:
Код: html4strict
<div onclick="window.location.href='<?php echo JURI::root(). 'index.php?Itemid=218'; ?>'"></div>
« Последнее редактирование: 07.03.2015, 00:59:37 от zomby6888 »
интернет-блог: http://websiteprog.ru

*

robert

  • Профи
  • ********
  • 4006
  • 371
parent.location
Может, ТС сидит в iframe? Хотя фиг его знает, не совсем понятно.

А на счет этого
onclick отказывается принимать этот формат.
Попробую поискать, как правильно записать JRoute в Onclick
сейчас набрал такой код
Спойлер
[свернуть]
- все прекрасно работает.
« Последнее редактирование: 07.03.2015, 17:32:00 от robert »
  • Не будь паразитом, сделай что-нибудь самостоятельно!
  • В личке и по Skype не даю советов.