Javascript加载但在Magento 1.9中不起作用

时间:2017-05-18 15:29:15

标签: javascript magento

刚进入Magento。我已经添加了一个菜单,需要它像Pen一样工作

http://s.codepen.io/WallyNally/debug/dWqGEp/yoMZEQWedYdk

Magento 加载源代码中确认的JS和CSS文件。风格显示正确。作为一个仔细检查,我在JS文件中包含了var MyVariable = "Exists!";。转到live dev页面中的控制台,我可以输入'MyVariable'并正确返回其值。没有抛出或显示错误。

但是,悬停事件不存在。即两个mouseenter事件触发器。

以下是所需javascript的摘录:

jQuery("#categories a").mouseenter(function() {
    let subcateg = "sub-" + jQuery(this).attr("id");
    let active = jQuery(".subcateg-active");
    let current = jQuery("#" + subcateg);

    if (active.length == 1) {
        jQuery(active).toggleClass("subcateg-active").fadeOut(150, function(){
             jQuery(current).toggleClass("subcateg-active").fadeIn(180);
        });
    } else if (active.length == 0){
        jQuery(current).toggleClass("subcateg-active").fadeIn(180);
    }

    if (active.length > 1) {
        jQuery(active).css("display", "none").removeClass("option-active");
        jQuery(current).toggleClass("subcateg-active").fadeIn(120);
    }
});

var MyVariable =“存在!”;

这是开发站点(链接不是永久性的,因此也附加了图像):

http://atlas3.netsos.com/ enter image description here

任何Magento学者都知道出了什么问题?

1 个答案:

答案 0 :(得分:1)

现在我认为有两个原因:

  • 首先:我没有看到任何类别的项目,所以,你确定"" #categories a"选择器是否有效(具有ID类别的元素包含一些链接标记?)?

  • 第二:JS脚本,你尝试在一些html元素上挂起事件,应该在必须要捕获这个事件的元素之后执行才会被添加到文档中。因此,尝试在加载文档后执行脚本。

示例:

jQuery( document ).ready(function() {
    // Here your JS code
});