Не удалось создать внешнюю ссылку на javascript: void ();

При написании сообщения в пунктах меню без фактической ссылки , я наткнулся на странное поведение в Joomla 3.3.3:

Я хотел бы указать, что тег <a>, ссылающийся на "#", может привести к тому, что страница будет прокручиваться вверху при нажатии, и что она может лучше использовать javascript:void(); в поле ссылки для элемента External URL. ( Эта статья объясняет, почему. )

Я делал это сам, но теперь я обнаружил, что в Joomla 3.3.3 он отказывается сохранять, если поле ссылки содержит javascript:void();. Взгляните на этот снимок экрана (до и после нажатия кнопки «Сохранить»):

До и после сохранения

Я только что протестировал его на более ранней версии Joomla (3.0.3), и я все еще мог использовать javascript:void(); в поле ссылки.

Является ли это ошибкой в ​​новых версиях Joomla или было решено, что ссылка на javascript больше не разрешена, где-то между J3.0.3 и J.3.3.3?

7 голосов | спросил johanpw 3 rdEurope/Moscowp30Europe/Moscow09bEurope/MoscowWed, 03 Sep 2014 21:48:42 +0400 2014, 21:48:42

2 ответа


6

На самом деле это была ошибка, из-за которой она работала (или была более конкретной проблемой безопасности). Текущее поведение правильное.

Литература:

Тип элемента меню Внешний URL-адрес не может быть сохранен с помощью javascript: void ()

Как разрешить элемент меню выполнить Javascript в Joomla 3.2?

ответил Valentin Despa 3 rdEurope/Moscowp30Europe/Moscow09bEurope/MoscowWed, 03 Sep 2014 23:18:32 +0400 2014, 23:18:32
3

В качестве дополнения к ответу Валентина вот как добавить код javascript в пункт меню:

  • Создать элемент пользовательской ссылки
  • Добавить # в поле ссылки
  • Обработать событие click, добавив javascript в другое место на странице (например, в нижнем колонтитуле).

Пример:

jQuery(document).ready(function($){   
  $(".menuitemclass").click(function () {
    //your javascript function;     
  });
});
ответил johanpw 4 thEurope/Moscowp30Europe/Moscow09bEurope/MoscowThu, 04 Sep 2014 14:58:23 +0400 2014, 14:58:23

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132