gpt4 book ai didi

magento - Twitter Bootstrap 3 下拉菜单在与prototype.js 一起使用时消失

转载 作者:行者123 更新时间:2023-12-03 07:17:26 27 4
gpt4 key购买 nike

我在 magento 网站上同时使用 bootstrap 3 和prototype.js 时遇到问题。

基本上,如果您单击下拉菜单(我们的产品)然后单击背景,下拉菜单(我们的产品)就会消失(prototype.js 在 li 中添加“display: none;”)。

这是该问题的演示: http://ridge.mydevelopmentserver.com/contact.html

您可以看到下拉菜单的工作原理如下,无需在页面上包含prototype.js: http://ridge.mydevelopmentserver.com/

是否有其他人遇到过此问题或有可能解决该冲突?

简单修复:

只需用这个 Bootstrap 友好的文件替换 Magento 的prototype.js 文件即可:

https://raw.github.com/zikula/core/079df47e7c1f536a0d9eea2993ae19768e1f0554/src/javascript/ajax/original_uncompressed/prototype.js

您可以在此处查看为解决 Bootstrap 问题而在prototype.js文件中所做的更改:

https://github.com/zikula/core/commit/079df47e7c1f536a0d9eea2993ae19768e1f0554

注意:JQuery 必须在prototype.js 之前包含在您的magento 皮肤中。示例:

<script type="text/javascript" src="/js/jquery.js"></script>
<script type="text/javascript" src="/js/prototype/prototype.js"></script>
<script type="text/javascript" src="/js/lib/ccard.js"></script>
<script type="text/javascript" src="/js/prototype/validation.js"></script>
<script type="text/javascript" src="/js/scriptaculous/builder.js"></script>
<script type="text/javascript" src="/js/scriptaculous/effects.js"></script>
<script type="text/javascript" src="/js/scriptaculous/dragdrop.js"></script>
<script type="text/javascript" src="/js/scriptaculous/controls.js"></script>
<script type="text/javascript" src="/js/scriptaculous/slider.js"></script>
<script type="text/javascript" src="/js/varien/js.js"></script>
<script type="text/javascript" src="/js/varien/form.js"></script>
<script type="text/javascript" src="/js/varien/menu.js"></script>
<script type="text/javascript" src="/js/mage/translate.js"></script>
<script type="text/javascript" src="/js/mage/cookies.js"></script>
<script type="text/javascript" src="/js/mage/captcha.js"></script>

最佳答案

我还使用了这里的代码:http://kk-medienreich.at/techblog/magento-bootstrap-integration-mit-prototype-framework但无需修改任何源。只需将代码放在原型(prototype)和 jquery 包含之后的某个位置即可:

(function() {
var isBootstrapEvent = false;
if (window.jQuery) {
var all = jQuery('*');
jQuery.each(['hide.bs.dropdown',
'hide.bs.collapse',
'hide.bs.modal',
'hide.bs.tooltip',
'hide.bs.popover',
'hide.bs.tab'], function(index, eventName) {
all.on(eventName, function( event ) {
isBootstrapEvent = true;
});
});
}
var originalHide = Element.hide;
Element.addMethods({
hide: function(element) {
if(isBootstrapEvent) {
isBootstrapEvent = false;
return element;
}
return originalHide(element);
}
});
})();

关于magento - Twitter Bootstrap 3 下拉菜单在与prototype.js 一起使用时消失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19139063/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com