加载新类别后 Javascript 不工作

Javacsript not working after loading new category

我在 Prestahop 的 1.7 custom.js 文件中添加了一些 JavaScript 代码,因为我想在悬停时更改类别产品 div 的 class。该代码有效,但如果我加载下一个类别或从分层导航中选择任何过滤器,代码将停止工作,并且只有在我重新加载页面时它才有效。我想这与加载结果和下一个类别的 Ajax 调用有关,但我对 JavaScript 不是很好。 关于加载新类别或筛选结果后如何使代码工作的任何想法? 任何帮助将不胜感激。

$(".product-box").hover(function(){
    $(this).addClass("current");
},function(){
    $(this).removeClass("current");
});

就像DustInCompetent提到的,如果只是简单地给它添加一些css样式,你可以使用.product-box:hover.

来实现

如果你也想做 JS 的东西,很可能 .product-box 是动态加载的。因此,您的 .hover 函数不适用于添加到 DOM 的新元素。你可以使用这样的东西:

$(document).on({
    mouseenter: function () {
        //stuff to do on mouse enter
    },
    mouseleave: function () {
        //stuff to do on mouse leave
    }
}, ".product-box"); //pass the element as an argument to .on