无法识别的表达式:不支持的伪:隐藏

时间:2017-11-09 08:56:39

标签: javascript magento navigation

我在Magento中遇到了一些js错误,更具体地说,下面的代码是导航的一部分,应该通过加载更多按钮显示所有元素。所有设置也通过ajax发送。部分代码如下:

 showAllNavigationAttribute: function(control, request_var){
        $(control).up('ol').select('li:hidden').each(
                function (e) {
                    e.show();
                }
            );
        $(control).up('li').hide();
        this.navigationOpenFilters[request_var + '_show_all'] = true;
    },

这是完整的错误报告

Uncaught Error: Syntax error, unrecognized expression: unsupported pseudo: hidden
    at Function.Sizzle.error (prototype.js:5265)
    at PSEUDO (prototype.js:5535)
    at matcherFromTokens (prototype.js:6010)
    at Sizzle.compile (prototype.js:6133)
    at Sizzle.select (prototype.js:6208)
    at Sizzle (prototype.js:4770)
    at Object.select (prototype.js:6296)
    at select (prototype.js:2661)
    at HTMLOListElement._methodized (prototype.js:456)
    at klass.showAllNavigationAttribute (advanced-navigation.js:1299)

上面的代码是advanced-navigation.js

的一部分

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

解决了在元素上搜索display:none并更换行的问题

$(control).up('ol').select("li[style*='display:none']").each(