Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/70.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
使用css和jquery将样式更改为悬停样式_Jquery_Html_Css - Fatal编程技术网

使用css和jquery将样式更改为悬停样式

使用css和jquery将样式更改为悬停样式,jquery,html,css,Jquery,Html,Css,我正在尝试更改保存单击链接的列表项的样式,因此该的样式将更改为悬停样式。但是添加$(this.addClass('hover')似乎不起作用。任何帮助都将不胜感激 $('a.app1-preview').click(function() { $(this).addClass('hover'); //do other things now: $('.app-preview-2').fadeOut

我正在尝试更改保存单击链接的列表项的样式,因此该
  • 的样式将更改为悬停样式。但是添加
    $(this.addClass('hover')似乎不起作用。任何帮助都将不胜感激

    $('a.app1-preview').click(function() {
                        $(this).addClass('hover');
                        //do other things now:
                $('.app-preview-2').fadeOut("slow", function () {
                    $('.app-preview-1').fadeIn("slow");
    
                });        
            });
    
    我的HTML代码是:

        <div class="app-container">
                        <ul class="apps">
                          <li class="app1"> 
                              <a title href="#" class="app1-preview blocklink">
                                    <span>ANOTHER<br /> APP</span>
                              </a> 
                          </li>
    </ul></div>
    

    css中没有名为
    hover
    的类,因此请改为这样:

    .hover { 
        background:#b2b2b2 url(app-icons/app1-hover.png) no-repeat 10px 10px; 
        color: #fff; 
        border-color:#b2b2b2;
    } 
    

    css中没有名为
    hover
    的类,因此请改为这样:

    .hover { 
        background:#b2b2b2 url(app-icons/app1-hover.png) no-repeat 10px 10px; 
        color: #fff; 
        border-color:#b2b2b2;
    } 
    

    :hover仅在鼠标悬停时有效。添加类hover不会将:hover类指定给元素


    另一种方法是将:hover更改为。hover

    :hover仅在鼠标悬停时有效。添加类hover不会将:hover类指定给元素


    另一种方法是将:hover更改为.hover

    您应该能够在元素上触发
    mouseenter
    ,并显示样式:

    $('a.app1-preview').click(function() {
                        $(this).trigger('mouseenter');
                        //do other things now:
                $('.app-preview-2').fadeOut("slow", function () {
                    $('.app-preview-1').fadeIn("slow");
    
                });        
            });
    

    您应该能够在元素上触发
    mouseenter
    ,并显示样式:

    $('a.app1-preview').click(function() {
                        $(this).trigger('mouseenter');
                        //do other things now:
                $('.app-preview-2').fadeOut("slow", function () {
                    $('.app-preview-1').fadeIn("slow");
    
                });        
            });
    

    您的设置将
    悬停
    类设置为
    a
    标记,而不是
    li
    元素

    所以试试这个:

    $('a.app1-preview').click(function() {
                        $(this).parent().addClass('hover');
                        //do other things now:
                $('.app-preview-2').fadeOut("slow", function () {
                    $('.app-preview-1').fadeIn("slow");
    
                });        
            });
    

    如果尚未存在,则应将名为
    hover
    的悬停类添加到css声明中。

    将设置
    hover
    类添加到
    a
    标记中,而不是添加到
    li
    元素中

    所以试试这个:

    $('a.app1-preview').click(function() {
                        $(this).parent().addClass('hover');
                        //do other things now:
                $('.app-preview-2').fadeOut("slow", function () {
                    $('.app-preview-1').fadeIn("slow");
    
                });        
            });
    

    如果尚未存在,则应在css声明中添加一个名为
    hover
    的悬停类。

    在悬停css中添加第二个css选择器:

    .app-container ul.apps li.app1:hover,
    .app-container ul.apps li.app1-hover
    {
        background:#57b6dd url(app-icons/app1-hover.png) no-repeat 10px 10px; 
        color: #fff; 
        border-color:#57b6dd;
    }
    
    现在,在您需要的地方执行以下操作:

    $(this).addClass('app1-hover');
    

    您将获得与鼠标悬停相同的样式,还将保留鼠标悬停CSS。

    在鼠标悬停CSS中添加第二个CSS选择器:

    .app-container ul.apps li.app1:hover,
    .app-container ul.apps li.app1-hover
    {
        background:#57b6dd url(app-icons/app1-hover.png) no-repeat 10px 10px; 
        color: #fff; 
        border-color:#57b6dd;
    }
    
    现在,在您需要的地方执行以下操作:

    $(this).addClass('app1-hover');
    

    您将获得与hover相同的样式,还将保留hover CSS。

    CSS中没有hover类。添加一个类hover&然后使用jquery添加它。将此添加到css中:

    a.app1-preview.hover { 
     background:#57b6dd url(app-icons/app1-hover.png) no-repeat 10px 10px;
     color: #fff; border-color:#57b6dd;
    }
    

    演示小提琴:

    css中没有悬停类。添加一个类hover&然后使用jquery添加它。将此添加到css中:

    a.app1-preview.hover { 
     background:#57b6dd url(app-icons/app1-hover.png) no-repeat 10px 10px;
     color: #fff; border-color:#57b6dd;
    }
    
    演示小提琴: