Я пытаюсь отобразить Bootstrap Modal в своем интернет-магазине, когда мышь наводит курсор на товар. Я искал в Интернете и обнаружил следующее:
https://stackoverflow.com/a/12190456/3164891
Я получил его для работы в скрипке, добавив следующий код:
$('#openBtn').hover(function () {
$('#modal-content').modal({
show: true
});
});
Но когда я хочу применить это к моей ситуации, я не могу заставить это работать
HTML
<li class="item">
<a href="#" data-toggle="modal" data-trigger="hover" data-target="#basicModal-<?php echo $_product->getId()?>" class="product-image" id="<?php echo $_product->getId() ?>">
<img id="product-collection-image-<?php echo $_product->getId(); ?>" src="<?php echo $this->helper('catalog/image')->init($_product, 'small_image')->resize($_imgSize); ?>" />
</a>
</li>
<div class="modal fade" id="basicModal-<?php echo $_product->getID()?>" role="dialog" aria-hidden="true" data-trigger="hover">
<div class="modal-content">
Modal Content
</div>
</div>
Вызов модал
jQuery('.item').hover(function () {
jQuery('#basicModal').modal({
show: true
});
});
Когда я пытаюсь сделать это на моем сайте, модальный режим отображается только при нажатии на ссылку и ничего не делает при наведении курсора. Я также попробовал следующий код:
jQuery('#basicModal').modal({trigger: "hover"});
Я использую следующие версии:
Ваш javascript-код, который запускает модал при наведении, не выбирает нужный элемент:
jQuery('#basicModal')
В приведенной выше строке вы выбираете элемент с id === «basicModal», но в вашем html идентификатор равен basicModal-<?php echo $_product->getID()?>
, Две строки идентификатора должны совпадать, или вы можете использовать подстановочный знак jquery, например JQuery("[id^=basicModal]")
это выбирает все элементы с идентификатором sarting с basicModal.
Вот рабочая версия вашего кода с подстановочным решением: http://jsfiddle.net/fcyafcgx/
Других решений пока нет …