2016-10-24 3 views
0

私はなぜこれが動作しない参照してください - どのようなヘルプ? 私は私はあなたが持っていると思うjQueryのjQueryでホバー上のadd-とremoveClassを

$(document).ready(function(){ 
$(".hoveroverme").hover(
    function(){ 
$('.popupbox').addClass('popupnobox');}, 
    function(){ 
$('.popupbox').removeClass('popupnobox'); } 
); 

CSS

.popupnobox{ 
    visibility: hidden; 
    opacity: 100; 
} 

.popupbox{ 
    background-color:magenta; 
    box-shadow: 1px 1px 3px 3px; 
    width:500px; 
    height:400px; 
    border:2px solid black; 
    justify-content: center; 
    align-content: center; 
    margin:0 auto; 
} 

.hoveroverme{ 
    background-color:green; 
} 

HTML

<div class="hoveroverme">Hover Over Me!</div> 
<div class="popupbox"></div> 
+0

@Donaldは、それが動作しない理由を私は推測の答えを持っています。同じクラスを追加して、同じクラスをもう一度削除しています... – SilentCoder

答えて

0

私は.hoveroverme divの上にカーソルを置くと、それは

をポップアップ表示したいですを定義しましたcss class other way round。私の理解によると、最初にpopupboxは表示されず、hoverovermeにカーソルを移動するたびに表示されます。その後、次のようにのみ、それが見えるようにする必要があります。私の提案で

$(document).ready(function() { 
 
     $(".hoveroverme").hover(
 
     function() { 
 
      $('.popupbox').addClass('popupnobox'); 
 
     }, 
 
     function() { 
 
      $('.popupbox').removeClass('popupnobox'); 
 
     } 
 
    ); 
 
    });
.popupnobox { 
 
    visibility: visible!important; 
 
    opacity: 100; 
 
} 
 
.popupbox { 
 
    background-color: magenta; 
 
    box-shadow: 1px 1px 3px 3px; 
 
    width: 500px; 
 
    height: 400px; 
 
    border: 2px solid black; 
 
    justify-content: center; 
 
    align-content: center; 
 
    margin: 0 auto; 
 
    visibility: hidden; 
 
} 
 
.hoveroverme { 
 
    background-color: green; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script> 
 
<div class="hoveroverme">Hover Over Me!</div> 
 
<div class="popupbox"></div>

0
$(document).ready(function(){ 
$(".hoveroverme").on("hover", 
    function(){ 
$('.popupbox').addClass('popupnobox');}, 
    function(){ 
$('.popupbox').removeClass('popupnobox'); } 
); 
0

より良いidを使用すると、お使いのjQueryのclass

$(document).ready(function() { 
 
     $(".hoveroverme").hover(
 
     function() { 
 
      $('#popupbox').addClass('popupnobox'); 
 
     }, 
 
     function() { 
 
      $('#popupbox').removeClass('popupnobox'); 
 
     } 
 
    ); 
 
    });
.popupnobox { 
 
    visibility: visible!important; 
 
    opacity: 100; 
 
} 
 
.popupbox { 
 
    background-color: magenta; 
 
    box-shadow: 1px 1px 3px 3px; 
 
    width: 500px; 
 
    height: 400px; 
 
    border: 2px solid black; 
 
    justify-content: center; 
 
    align-content: center; 
 
    margin: 0 auto; 
 
    visibility: hidden; 
 
} 
 
.hoveroverme { 
 
    background-color: green; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div class="hoveroverme">Hover Over Me!</div> 
 
<div class="popupbox" id="popupbox"></div>

-1

に邪魔されていませんスクリプトが間違っています、ご覧くださいこのCodepen

コード:

HTML

<div class="hoveroverme">Hover Over Me!</div> 
<div class="popupbox"></div> 

CSS

.popupnobox{ 
    visibility: hidden; 
    opacity: 100; 
} 

.popupbox{ 
    background-color:magenta; 
    box-shadow: 1px 1px 3px 3px; 
    width:500px; 
    height:400px; 
    border:2px solid black; 
    justify-content: center; 
    align-content: center; 
    margin:0 auto; 
} 

.hoveroverme{ 
    background-color:green; 
} 

JS

$(document).ready(function(){ 
$(".hoveroverme").hover(
    function(){ 
$('.popupbox').addClass('popupnobox'); 
    }, 
    function(){ 
$('.popupbox').removeClass('popupnobox'); 
    }); 
}); 
関連する問題