Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将变量与jQuery addClass一起使用_Javascript_Jquery_Html_Css - Fatal编程技术网

Javascript 将变量与jQuery addClass一起使用

Javascript 将变量与jQuery addClass一起使用,javascript,jquery,html,css,Javascript,Jquery,Html,Css,尝试将一个变量与:not混合,然后将该变量与addClass一起使用。但是还没有运气 HTML <ul> <li><a href="#">Nav One</a></li> <li><a href="#">Nav Two</a></li> <li><a href="#">Nav Three</a></li> <li>

尝试将一个变量与:not混合,然后将该变量与addClass一起使用。但是还没有运气

HTML

<ul>
  <li><a href="#">Nav One</a></li>
  <li><a href="#">Nav Two</a></li>
  <li><a href="#">Nav Three</a></li>
  <li><a href="#">Nav Four</a></li>
</ul>
JAVASCRIPT

myFunction('ul li a', 'enc-active', 'enc-non-active');

function myFunction($menu, $activeClass, $nonActiveClass) {
   $(function(){
        $($menu).hover(function(){
            $(this).addClass($activeClass);
        },
        function(){
            $(this).removeClass($activeClass);
        });
        $($menu).hover(function(){
            var fullPath = $menu + ':not(' + $activeClass + ')';
            $(fullPath).addClass($nonActiveClass);
        },
        function(){
            var fullPath = $menu + ':not(' + $activeClass + ')';
            $(fullPath).removeClass($nonActiveClass);
        });
    });
}
这是密码笔,如果有人能让我知道我做错了什么,那就太好了。谢谢您的时间。

您在中忘记了一个点:不(.-容易修复)


将类名转换为css选择器缺少一个点

改变

var fullPath = $menu + ':not(' + $activeClass + ')';


$menu
$activeClass
的值是多少?用户希望使用该函数的值是多少。例如,我将其称为myFunction('ul li a'、'enc active'、'enc non active').你看了codepen吗?什么功能?请在这里发布代码,而不仅仅是在codepen。现在已经没有必要使用codepen了。好的,我会检查堆栈片段。现在我只是把代码放在帖子中。
var fullPath = $menu + ':not(.' + $activeClass + ')';
$(fullPath).addClass($nonActiveClass);
var fullPath = $menu + ':not(' + $activeClass + ')';
var fullPath = $menu + ':not(.' + $activeClass + ')';