Событие Onclick для элемента области карты изображения - PullRequest
0 голосов
/ 16 апреля 2019

У меня следующая проблема. У меня есть большое изображение (баннер), и на нем у меня есть два флага, которые являются 2 областями карты. Я хочу сделать следующее: когда вы нажимаете на английский флаг, язык меняется на английский, когда вы нажимаете на испанский флаг, язык меняется на испанский. Я не знаю, должен ли я сделать это с помощью функции href или onclick. Я добавляю немного кода.

<img src="banner_trading_1440_x_176_esp.jpg"   usemap="#planetmap">
<map name="planetmap">
 <area shape="rect" coords="1318,14,1346,32" alt="Eng"  href="javascript:window.location.href='<?php echo base_url(); ?> LanguageSwitcher/switchLang/spanish';" >
 <area shape="rect" coords="1276,14,1303,32" alt="Esp" onclick="javascript:window.location.href='<?php echo base_url(); ?> LanguageSwitcher/switchLang/spanish';"/>
</map>

Раньше у меня были оба флага как 2 отдельных изображения, и код был таким (и работал отлично):

  <img style="width: 30px; cursor: pointer; padding-top: 15px; padding-bottom: 15px;" src="http://www.hemptrading.com/tienda3/asserts/img/spain.png" onclick="javascript:window.location.href='<?php echo base_url(); ?> LanguageSwitcher/switchLang/spanish';"/> 

Ответы [ 2 ]

1 голос
/ 16 апреля 2019

Вы должны вызвать функцию javascript из тега области и поместить свой php-код в определение этой функции

<area shape="rect" coords="1318,14,1346,32" alt="Eng" href="javascript:your_function();" >

и добавить эту функцию php-кода

<script> function your_function() { window.location.href='<?php echo base_url(); ?> LanguageSwitcher/switchLang/spanish'; } </script>

1 голос
/ 16 апреля 2019

Если вы находитесь на странице и отвечаете на событие, я бы сказал, что используйте onclick.

Если вы переходите на новый URL, я бы сказал, используйте href.

Поскольку вы переходите на новый URL, я бы использовал что-то вроде href="<?php echo base_url(); ?>LanguageSwitcher/switchLang/spanish".

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...